I dont think either is better than the other, both are really fun for their own reasons
Battlefield has huge maps, at least 4 or 5 times bigger than any COD maps. This changes the whole dynamic of the game because battlefield features ground vehicles like Tanks, Jeeps and Helicopters. Team play is important in Battlefield, you need good teammates and have to work together with the different classes, medics, engineers to fix tanks etc. Sniping is much more prominent in Battlefield, at least compared to the most recent Black Ops.
I've always loved the Call of Duty franchise since the original MW. Relatively small maps, kill streaks, good balance of weapons, weapon customization. The last 4 games have differed from each other quite a bit. MW2 was difficult for me, too much of the game catered to campers who would just sit behind walls building their killstreaks. Thats another good thing about battlefield, destructible environments, nowhere to hide. Ive always liked the graphics in the Cod series over battlefield, but apparently MW3 is using the same graphics engine as Black Ops and Battlefield 3's are amazing as these videos show.