I have been using a Logitech Harmony H-659 remote for several years and absolutely love it.
The Harmony remote series come with software (or you can download it from their site) that allows you to configure your Harmony remote through USB. You create an account, and Logitech stores your remote configuration so that you can reload it onto your remote whenever you need. I never thought that it was a useful feature until I broke my H659 and bought a new one - it took 2 minutes to upload the configuration, and it was like nothing had changed!
Logitech stores the remote codes for thousands of devices, so there is no "try code xxx1, power, nope, try code xxx2, nope, etc". It's just a matter of picking your device from the software and letting it upload it to the remote.
The Harmony remote series also has an extremely high "wife approval factor" (or WAF). You can set up actions like "Watch a Movie", which, on my setup, sets the speakers to the PC input, changes the TV to HDMI1, and turns on the PC.

Jared Harley is a "god" in my eyes. I purchased this controller, set it up, and it worked correctly from first push! New egg had the controller for $39.00 dollars?. The one push to watch TV or DVD which includes turning on 4 pc. of equipment worked flawlessly Great advice, I love this site guys! – Littlet-ENG – 2009-11-04T16:44:11.673