Logitech Harmony 680
I picked up a Logitech Harmony 680 Remote Control while it was on sale at Amazon last week. I am very happy with it. I've always had problems with universal remotes because they never seem to feel as good as the original remote. And there's always a button or two missing. The 680 feels really good to use, and it has an LCD screen the hard buttons on the side to accomplish any task that it does not have keys for.
The 680's claim to fame is it's ability to control XP Media Center Edition (as is evident by it's big green button). I don't actually have a Media Center so I could not test it out (my HTPC uses an RF remote with some other software). But it controls all of my other devices just fine. There's a web interface to configure your remote and it downloads the configuration via USB. The web interface found every single device I threw at it (even some stuff I thought it would never have codes for).
The thing I really like about the remote it's setup by activity. You push “Watch TV†and it turns on my TV, turns on my ReplayTV, and sets the correct TV input. It's now just one button to watch TV. Once you are in a specific activity, it can control multiple devices. In TV mode, for instance, the volume buttons control the TV's volume. In movie mode, however, the volume controls my receiver's volume. With the ability to assign activities to the LCD buttons, I can setup enough activities for even all my devices.
My only complaint with this remote is that it keeps an internal memory of the state of your devices. It needs to know if each of them is on or off, and sometimes what inputs are set. This means that you should not use other remotes or turn the devices off by hand. It's not very much trouble to fix if they get out of sync, but it is a few extra steps. This is not that big of a deal for me since I hid all my other remotes once I found this one, but it might be something to keep in mind if you "misplace" remotes a lot and like using different ones.