So, I want to preface this with saying that I realize that much of the first year the game was completely broken. Also I should note that I'm including the "Premium" content in my argument.
Battlefield Bad Company 2 has always been my favorite title in the franchise, due to the sheer volume of content, as well as the incredible environmental destruction, deep squad functionality, and free map support. Bad Company 2 is the most fun I had on the previous generation of consoles. However once DICE ironed out the networking issues and glitchiness in Battlefield 4 I honestly think it is shaping up quite well. I think it is amazing that they are still supporting the game three years after launch (They just announced a new map for free to all players).
Battlefield 4 offers a massive amount of content in comparison to most modern shooters, in that the base game offered 10 full maps, and the premium subscription offering an additional 20 maps (The vast majority of which I quite enjoy). It offers a bounty of different vehicles, and a ton of guns and gun customization options. Also most of the same destructibility from Bad Company 2 returns (Which I felt was largely missing from BF3). It also offers a ton of modes, even if a few of them aren't as good as they were in BC2 (Rush in particular feels lacking)
Battlefield 4 still has problems, my main issue is the lack of customizing your loadout outside of an active match, and the fragmentation of premium maps vs. base maps. However I think after the rocky launch issues were ironed out, BF4 has turned into one of the best games in the franchise.