If you are looking to stay with AGP (if you are running that now anyway), look for like a 6600 GT/x700 XT or a 6800 GS(or XT)/x800 GTO. If you can find a 6800GT or 6800Ultra in AGP form for a good price, you would be well off for a long time.
If you are running PCI-Express, you can look for the above mentioned chipsets or you can go with a 7600/x1600 or greater.
Yea 6800gs is an awesome card for its price and OCs pretty well too, plus if you get the agp version you can
attempt (emphasis intended) to unlock the pixel pipes with rivatuner or something and get higher performance. But dont expect to be able to do that and make it work properly, sicnce there is a high chance that it wont work well once the pipelines are unlocked.
And forget the x1600 since it doesnt perform well, but the 7600gt is a great bang for the buck card.
Yea, i included the x1600 there because that was ATI's first, poor attempt at competing against the 7600 series.
If you are looking for cards $200 or less, check out the article Tom's just did on the subject. They test the X1800 GT (or GTO, i cant remember and am too lazy to look at it lol), a X850 XT (previous generation, same generation as the 6800/6600 but ATI and not Nvidia), and the 7600GT. I wouldnt recommend going with the X850 as it does not support SM 3.
so here is my suggestion for different price ranges to run what you want:
AGP8x:
Up to $150: 6800 GS (or GT if you can find one) or a X1600Pro
$150+: 7800 GS
PCI-Express:
Up to $200: 7600GT or X1800 GTO
$200-300: 7900 GT or X1900 GT
$400-500: 7900 GTX or X1900 XT/XTX
$500+: 7950GX2
If you want to run games at playable frame rates at 1680x1050, you will be looking at about $200+ for a gfx card. Cards cheaper then that might be able to run it but not nearly as pretty and clean as the above ones.
Stay away from the X8??'s as they are not only previous generation but they dont support shader model 3. The 6800's do, thats why they are an ok option for upgrade.
This is all just my opinion though so... My two cents