Battlefield has much more depth, and a MUCH deeper skill-curve. No more sniping with SMGs unless you're very good. Bullets have drop. Destruction means constantly analyzing your surrounding. The vehicles are quick to learn, but tough to master. Especially the helicopters. God damn those things are tricky to become great at.
CoD is the same experience every time. Half of the guns are literally the same gun, reskinned, with a milisecond difference in reload time. (Source: Denkirson.zanga.com) There is really hardly any difference between most guns. When there is a difference it is labeled overpowered and everyone and their dog's goes and uses it. Thus making it even more difficult to play how you want to. You either use the "good gun" or fall prey to those that do. That doesn't happen in Battlefield. Every gun is viable, and there is no single gun that reigns supreme.