ITs a pretty common problem i think, so your not alone
Best thing to do is start the game in windowed mode, and see idf any error messages appear during loadtime. Best you can do it with the debugger, since it will catch most of the problems, as the normal .exe only does a few and just crashes most of the times. If you see anything, try if you can fix it yourself , msotly its pretty clear what is wronmg. If nothing shows up, try using windows search in the bf42 folder and sort on date of last change, if anything is later than 2004 orso, replace it (except for the config files ofcourse). You dont have to neccessarily reinstall, you can use winpack too.