I like both. I find BC2 to be a good game, but I cant stand the not being able to go prone. That was the tough part for me. I stopped playing it after about 60 hours (xfire shows 39, but it wasnt alwasy on) mainly because it wasnt running properly at the time. One of the updates fixed it and I play it here and there.
Played MW2 for around 250hrs by steams account. But since VAC cant seem to ban even half the hackers on the PC version, I just stopped playing it a couple months back. I tried it again a few days ago, and once yesterday, and both times it had at least 1 hacker in the game by the 2nd map, if not the second round of HC S&D. I find the PS3 version to be great and all, but I cant stand the controllers, so I play it rarely on there. (Solution to the hackers, be the host, find the hackers name and find an association with it in the incoming IP logs, then block the IP at your router using a laptop. they CI and no more hacker)
But to put it all in perspective for you, I've played CoD4 every day now for nearly a month straight, and find it to be a ton more fun then MW2. The ability to play custom maps and mods with custom guns and actually enjoy a game is a nice change of pace. With MW2, you either deal with the hacker or leave (or block them if you know how, which is a pain in the arse). With CoD4, you simple ban them from console, or an rcon tool, or something like bigbrotherbot.
CoD4 = BC2 > MW2 is how it seems to me. I can play BC2 and CoD4 for the enjoyment of actually playing. With MW2, I quit and go back to the others.