Hard drives should be OS independent ("vista compatibility" is just marketing hype).
Your HD may have been failing, or the data may have gotten corrupted somehow.
(2 or more in raid 0 is even more
it's pricey, but it's pretty much the best performance drive that can be put into modern consumer-grade PCs.
If that's not quite for you, then pretty much any drive would do about the same.
Big things to look for are:
spindle speed (most desktop HDDs are 7200 rpm or 5400 rpm. Higher is generally better)
avg seek time (lower = better)
cache size (higher = better)
You'll also have to know what interface your computer can use. It's pretty much either IDE (aka EIDE, ATA) or SATA
Western Digital has always been reliable for me