Well first an indication of your current machine specifications would be a help: click here This program will tell you what you have.
The how much you a looking to spend on it?
Generally those looking to spend £40-£60 are best to look at the ATI9600Pro and FX5700.
Generally those looking to spend £50-£100 Max are best spent on the ATI 9700Pro or FX5700Ultra.
Above this and upto around £100-£150-£180 the ATI9800PRO - 6600GT - 6800'standard' are the card of choice with more power and a higher of degree of future proofing. If £120 is your budget then the ATI9800Pro is still a fine card.
If money is no object then the 6800 GT /ULTRA or ATI X800Pro / XT PE - X850XTPE are the ultimate gaming cards.
Look here for the best prices :click here
Again do you just want to be able to run these games at modest detail settings or with all the 'eye candy' turned on as this really is a massive question and will heavily depend on how the rest of your system fairs up to see which is the best card for you.
I have a AMD 2500+ 1GB Crucial PC2700 RAM and a 6800 GT and enjoy 3DMark03 scores of 11,851 and 5049 in 3DMark05 which anyone will tell you is a very capable games machine: click here
Try and give a more details about how much power/price performance you need and we will be happy to help.