Eh, most of you are wrong. While, I can see where Pzero is coming from, cuz I had that feeling too, but we both have crazy overclocked processors so we don't know whats what.
Buying a 7800GTX for a Duron (well, Duron wouldn't even run BF2 cuz of the instruction sets) would be like buying a 10 liter bottle (the 7800GTX) to hold one liter of water (the Duron). You end up with a LOT less than what your should get. A better processor would be like having more water.
Processor DOES make a difference in gaming. Mostly, its because newer processors like the Pentium 4 and Athlon 64s have certain "instruction sets" that some games need to be able to run. For example, you can't run Age of Empires III with a regular Athlon CPU (not Athlon 64) because I think AOE III requires the MMX instruction set. This isn't an issue for newer processors.
But still, even if the processor had all the instruction sets, a 2.0GHz Pentium 4 won't run BF2 at max, no matter what videocard you have.
But I digress.
AMD Athlon 64 3000+ (1.8GHz processor) will be fine. The 3500+ (2.2GHz processor) is only .4 GHz faster, and its easy to overclock the 3000+ to 2.5GHz. Its just a waste of $70...
2 gigs of RAM will help you a lot more than a better processor. And since you already have the equivalent of a X850XT, you don't need to worry about the videocard bottlenecking.