A mi me pasaba exactamente lo mismo. Yo tengo un Core 2 Duo con 4gb de Ram y una gráfica Geforce 9400. Tengo el Windows XP instalado con el Bootcamp, ya que tengo un MAC. Hice horas y horas de pruebas, y al final, bajé todas las opciones de video al minimo en el BF2. Después fui subiendo una por una la calidad de todas las opciones y cuando se me colgaba la dejaba en "Bajo" otra vez. Finalmente tengo un configuracion con la cual ya no se me cuelga nunca. Quizás sea particular para mi tarjeta, pero os la pongo aqui por si os puede servir:
Resolucion: La que queráis, puede ser la mas alta.
Calidad: Personalizado.
Terreno: ALTO
Efectos: ALTO
Geometria: BAJO
Texturas: ALTO
Iluminacion: BAJO
Sombras dinámicas: Desactivado
Iluminación dinámica: Desactivado
Alisar Bordes: Yo pongo 2X, porque sino me va lento, pero no se cuelga por culpa de esta opcion
Filtrado de texturas: ALTO
Distancia de Vision: 75%
Con esto me va perfecto. SUERTE!!!