I use a portable external hard drive for the media and Acronis Backup and Recovery 10 for software (this is for Windows, of course.) The drive I use is a 2 TB Western Digital model that I bought at Costco for around $130 about a year ago. Acronis was about $80 which I bought online.
I really like Acronis. It has a "boot disk" concept where even if the OS is trashed, you can boot from their recovery CD that you burn for yourself, and then use it to restore your last backup. Plus a zillion options to create fine grained backups and to control the process.
What I do is create a new backup set and do one full backup, then every couple of weeks I do an incremental backup to the set. After about 6 months I create a new full backup set. I have about 200 GB of "live"+legacy data that I haul around, and the first full backup usually takes about 3-4 hours. After that, incremental backups every couple weeks require about 20-40 minutes to complete.