Be absolutely sure whichever card you purchase is a PCI (not
PCI Express) card. If you have an AGP slot you should use that instead as I believe you'll get better performance out of it (although keep in mind if, for example, you get an AGP 8x card and plug it into an AGP 4x slot it won't run as well as it otherwise would, but still probably better than a pci card). I'd go for an ATI card, I've never had any trouble with them (just got a PCI express ATI Radeon x700 with 256 megs of RAM and it runs great at the beginning of the summer). ATI cards tend to be a little cheaper than Geforce cards.
Compatability shouldn't really be an issue at this point anymore. ATI and Geforce are pretty much the only games in town anymore. Doesn't mean you shouldn't go ahead and check, though. You should be safe buying an ATI knockoff brand, just be sure you compare its tech specs to the one its modeled after. The two games you mentioned aren't exactly new, so you should be good with a card with 64 megs of RAM, although if the price if comparable I'd go for one with 128 megs.
Check out these sites -
(they have good reviews and benchmarks of all kinds of hardware here)
(you can compare prices here)
(check out the refurbished section)
When I get back from class I might go ahead and look around a bit and make some specific recommendations. What's your price range?