It really depends on what you want to do.
Are you satisfied with using whatever the device comes with for the menus and library or are you going to want to customize everything with box art, plot info, etc ?
If all you want to do is playback HD video in the common avi,mkv formats then get a set top box. You could go with a bluray combo device but I do not recommend them right now because there are some issues with playing back your own content that the players are not handling well since the primary focus of the design was bluray disc.
For set top boxes the market in the past 6 months has exploded. There are over 30 players on the market now. Most use either the realtek or sigma chipsets. The advantage of these devices is almost zero setup. Plug them in, turn on, play video. No drivers or other stuff to mess with. They also tend to use very little power, under 10 watts and are totally silent. Most have a usb port for external drives and some even offer esata for drives. Most also have network connectors for streaming from another pc. The ones I recommend:
Western Digital Live
http://www.amazon.com/Western-Digita...3700028&sr=1-1
Seagate freeAgent
http://www.amazon.com/Seagate-FreeAg...699990&sr=8-11
Brite-View BV-5005HD
http://www.amazon.com/Brite-View-BV-...3700049&sr=1-5
Patriot Box Office 1080p High-Definition Media Player PCMPBO25
http://www.amazon.com/Patriot-Office...lp_edpp_ttl_in
I chose the western digital because I like to hack firmware on devices and the WD box is pretty easy to do that with to add other features like torrents, weather, customize the layout, etc.
If I had to buy again though I would probably get the patriot because it supports internal hard drives and has more external ports.