It depends on what you want. Start with what htpc duties do you want it to pull. Is audio over hdmi important to you? If yes, then ati 4xxx cards are the way to go. picture quality wise, unless you are an uber geek (not saying this as a bad thing... a compliment actually) either nvidia or ati cards are fine and damned near anything modern can play hd files just fine. as far as gaming goes, ATI cards are a better value. If you are on a budget, but still want to game into the near future at respectable settings, look into the radeon 4770. It is getting glowing reviews just about everywhere and only costs about $100. a 4670 will get you by just fine, but i think it is worthwhile to go the extra mile and get something that will last a little longer. 4770 or a 4850 if you can find a great deal that makes it significantly cheaper than a the 4770.
beyond that, the way to pick a card is to haunt the hardware review sites. my favorite is anandtech.com. they give some of the most honest and in depth reviews of hardware on the net. they take it to a detail level that is beyond many of us here, but manage to write it in a way that actually teaches you something. After you've done the research, you have to just weigh cost vs. benefit, just like anything else...