In my opinion, battlefield 3 has some better characteristics, but modern warfare 3 also has some decent things about it. I like the fact that sniping takes actual skill in battlefield, and that you won't always hit someone, unlike mw3 in which you aim at someone, shoot, and kill them, every time. Battlefield 3 also has the destructible environment thing goin for it, so that always helps. One of my gripes with battlefield 3 is the vehicles can be kinda annoying, especially since the helicopters are nearly impossible to hit if they have flares. Modern warfare 3 is relatively balanced throughout the entire leveling system, but battlefield 3 has some fairly obviously better weapons at higher levels, making it unbalanced.
Overall, if i have to rate the games, i'd rate Modern Warfare 3 a 8/10, simply due to the fact that it's extremely similar to Modern Warfare 2 with the graphics. Battlefield 3 is a 9/10, the point off do to the slight imbalance. Overall, i'd rather play battlefield 3 though.
EDIT:
Call of Duty went downhill after.... screw it. I have no idea anymore.
Call of duty 4 was the peak of the series, and world at war wasn't too bad. Modern warfare 2 was allright, but Black ops was terrible.