
I think both games are worth buying. In both games, I can manage team work. As long as you have communication, you can have some pretty awesome teamwork. Battlefield 3 however has the squad system that works similar to Bad Company 2, which is pretty nice being able to spawn on your teammates location. Call of Duty lacks that one thing, and can make it difficult to find your team.
Next, graphics in both games look pretty good. Battlefield 3 obviously has the edge with the very nice Frostbite 2, which was shown off from the beta. Modern Warfare 3 looks to be very similar to Modern Warfare 2, with a twist of graphical styles from Black Ops, so it looks a bit like both.
The gameplay is the biggest factor. I honestly think that Modern Warfare 3 will be a little more fun to play. The formula from Modern Warfare 2 seems to look intact. It is smooth and fast-paced, which is a thing many games lack. Battlefield 3 is obviously a little slower from the beta, which supposedly had a 'small' map, and it seemed you ran for about 30 seconds to a minute to get into the battle. Battlefield 3 also had A LOT of campers. I don't know if it was because it was an open beta, or if I just joined many bad matches, but it was VERY aggravating. Taking 30 seconds to see a lone enemy and get knifed from the back by a camper in the bushes(then repeat.) While Infinty Ward/SledgeHammer stated they are trying to prevent camping for Modern Warfare 3, but we will need to wait and see about that. Modern Warfare is also about fast paced action, which made everybody a bit on the edge of their seat trying to get that last kill.
The single player portions of the two games are both looking amazing. Modern Warfare 3 is to have another over-the-top story that feels like an action movie, while Battlefield 3 shows to be about a tactical squad and have vehicular battles.
I can go on, but I should end my rant and let you guys voice in.