Nah, I liked CoD2 too.
The singleplayer was almost unplayable for me though. Its so stupid, but they didn't even include the slightest trace of irony. ITs all done so it seems to be uber-realistic, with black-and-white footage as videos, (extremely cheesy) diary entries on the loading screen, etc. and then the game follows as a utterly stupid action romp with one dramatic moment after the other while almost none of them seem even closely realistic. Also, I HATE it when enemies just respawn in "realistic" games. I'm fine with stuff like that in a game like, say, Serious Sam, or Darkwatch (excellent game btw. Very short, but awesome while it lasts!

), but in a game that tries to force you to think its realistic I feel screwed by such nonsense. Whenever I played a mission in the singleplayer campaign I thought "do they think we are retards? What's that supposed to be?". On the other hand, I
loved the singleplayer campaign in "Return to Castle Wolfenstein"! Its of course not more realistic than CoD2 - that's not what coutns for me - but at least it doesn't want to make you think it was. Its honest nonsense and I'm fine with that.
CoD4 is just the same as CoD2 in that regard. In a way its even worse, because in the ww2 setting one is used to slaughter nazis left and right, but the modern setting was almost always used for somewhat more realistic games.
BUT: The multiplayer in CoD2 was top-notch. It looked awesome and runs very well, and, most importantly, it also plays very well. With all their realism features, like the crosshair dissapearing while you move, or the weapons doing relatively much damage, iron sights and what-not - the game is still faster than most other shooters in a similar genre. Its almost a Quake 3 with ww2 skins.

Its a shame that no one seems to talk online, because everyone is busy fragging people and IF someone talks he's a racist. But you can hardly blame the game for that. On Lans, where you play with friends, the game is great though. Really great.
However CoD4 took something out of the game:
Fundamentally different weapons.
In CoD2 you had the choice between a Kar98k, a Garand, a ppsh and say, a Bren. All of these are completely different from one another.
In CoD4 you have the choice between one smg and another and the only difference is how much damage they do. Of course that's oversimplifying things for the sake of argumentation, but you get my point. CoD4 is less complex and wall penetration doesn't save it in my opinion, because that feature doesn't even work that well in an unrealistic game in my opinion.
So, in short:
I think the singleplayer is bad in both, but for multiplaying purposes, I prefer CoD2 over CoD4.