Are you playing online or in single player.I've heard that you need to have over 1GB of ram with this game and many are recommending 2GB which reduces the lag during the game and dramatically improves the time taken to return to the desktop when you shut the game down.
Have a search on Google for "lag in BF2" and "do I need 2GB ram?" click here for starters
There is also some problems with lag on the servers,particularly with the 64 player game.
I would try to get it running smoothly in single player by adjusting the settings downwards but I would definitely think about getting some more ram.Try "borrowing" some out of a mates pc and see what happens (if you can!).