Raspberry Pi Media Player
The Raspberry Pi Model B is a $35 computer about the size of a deck of playing cards. It contains an ARM11 processor running at 700Mhz (overclockable), 512MB RAM, HDMI port, SD card slot, USB ports, and a RJ45 network adapter. Its low power consumption and ability to play some HD video make it a viable option for a budget HTPC. For more information about the Raspberry Pi, check out their web site.
It can be purchased from several distributors. If you don't feel like searching for one, just browse over to element 14. It will need a SD card to boot from. A list of brands/models that have been verified to work can be found here.
The software I'll be using is a Debian Linux-based distribution named Raspbmc. It includes XBMC which is a popular media center software. It's available for download here. No experience with Linux is necessary. The installation is fairly straight-forward. Insert your SD card into your computer and run a script to copy some files onto your SD card. Then, insert the SD card into your Raspberry Pi and connect it to your TV and to your network. Make sure you have a DHCP server available. Boot it up and it should go through the rest of the installation automatically.
The full instructions are available on the Raspbmc User Wiki for installing via Windows and installing via Mac OS X or Linux.
Once it completes, you'll want to tell XBMC where your media files are located. Typically, this will either be a USB hard drive or a shared folder on your desktop computer. You may also want to install additional software such as the YouTube add-on to stream videos from the YouTube web site.
Android users will want to download Yatse, a free app for your smartphone or tablet which acts as a remote control. Edit your settings in Yatse to add the IP address of your Raspberry Pi and you should be ready to start enjoying your new HTPC.