BF2 is more skillful and exciting- 2142 is more fun, with rank-ups and new toys every few thousand points (and they come quickly due to career point system).
Not being bombed to pieces every time you drive along a road is nice, and not being gunned down by choppers the whole time is also refreshing.
However, the guns aren't accurate enough (except for the support guns), you need to be way too close to shoot people properly.
The vehicles are much weaker against infantry (1 rocket to the back of a tank+boom) but in some ways that's a bad thing - no more massive rush for cover that you had in BF2. Having a tank chase you really got the adrenalin pumping. Also, anti-tanking used to be a challenge, now its way too easy.
Its essentially BF2 noobified. So play it for 6 months or so, get all the unlocks, and go back. I think I'll switch back soo (except that I just got Medieval 2 and am still playing BFME 2)
Special Forces is still by far the best though.
--------------------------------------
If I should die, think only this of me:
That in some corner of a foreign field
There lies a plagiarist.