SOLUTION FOUND
Well if your like me, then your game crashes after every time you click connect to a server. Well if you have an X-FI card, there's your problem. NOTE: it is very important to do it in this order
1. First of all, if you have vista, navigate to control panel-Hardware and sound-View hardware and devices. You can get here with XP/Classicview, but im not sure how becuase i run vista
2. Go down to sound, video and game controllers and open that.
3. Disable Creative SB X-Fi (a box may pop up, just click OK) keep the Device manager window open
4. Start up BF2142, and go to audio settings
5. Go to audio renderer and select Creative X-Fi
6. Alt tab, and reenable your Creative SB X-Fi driver
7. You should be set to play the game now
Note: I believe that steps 5 and 6 may be interchangeable with each other
Note: This may also work for BF2, but is not yet tested
-Tioga060