1. It depends on what kind of sound setup you want. If you're going to use sound over the HDMI, to just the TV or to the TV and then to the speakers through the TV, you can just use a newer video card that supports HDMI bitstreaming. But if you're going to use a separate receiver of something for audio, then a sound card will help with quality.
2. It depends whether you want to use your HTPC for gaming or not. If so, something faster like a 6850 is probably the way to go. Otherwise, you don't need such a high-end card, though I wouldn't recommend an old 240 either. A Radeon HD 5570, 5670, or GeForce GT 430 is probably a better option at the low end.