Yes, the X1800 is "high-end enough" for all games, but whether it's enough for what you in particular want will depend on what you're going to do with it. Are you going to run at 1280x1024, or 1600x1200 or even higher, with 60Hz or 120Hz refresh rates? Do you want to have all the shadows and lighting effects and all the other eye candy turned to maximum, or do you not really care because you're intent on playing the game, not looking at the scenery? Can you play with a 30fps minimum framerate, or do you feel that's too slow and you want 60 as a minimum and 100 as an average? What kind of performance does the rest of your system have; will it be able to keep up with the higher performance card, or should you save the money because the higher performance will be wasted because of CPU limiting?
I don't recall (because I never cared) what chipset the 7950 is based on, how old it is compared to the x1800, etc. I think I'd personally go with the 7950. But as mentioned, read some of the review articles. They can show you what levels of performance you get in various games with different settings, and give you some baselines to compare your system to.