Well, they're both good games, but it depends on you.
If you only play games on your own, then get Battlefield 3. The only offline mode is Campaign. It has Co-op, but only online with random people. The online multiplayer is amazing and fun!!! If you do I'm sure you'll like it!
Modern warfare 3's online multiplayer is full of campers, which I find really annoying. but it has plenty to offer for offline. You get the survival mode, co-op missions and splitscreen. You can also play online with another person.
So, to sum it up,
If you're looking for a good online experience, go with Battlefield 3 If you're looking for offline features, go with Modern Warfare 3