Maybe because they do games people actually want to play? (Same reasons why Mario Bros rescuing a Princess formula is successful every time)
-They donīt do stupid unnecessary reboots.
-They donīt try to go Hipster and Edgier.
-They sell military FPS... and every year it is still a military FPS and not other silly random or "innovative" thing nobody asked for.
-The difficult of the game allows everyone to be happy, no matter if you are a try hard with no life who obsessively plays 24/7 or a casual guy with a life and not much time to practice, both can pick up the game at any time and can have fair fun with it unless maybe all fighting games that are unplayable after a week if you are not Justin Wong or ComboFiend.
-They offer several modes just for fun like Zombies or Spec Ops where you can do several activities outside the campaign or use special weapons or play as Jugegrnauts etc.... without the lazy developers calling the "We canīt include this because the game is realistic and wonīt fit in the game...."
At the end games that donīt sell well is because the didnīt appealed to the consumer and before you go "Grrraw you are an entittled brat and".... etc... remember... Developers are NOT entittled to our money either, they make games we want to buy or they go bankrupt, period not the otherwise around.
People slam it for being the same game every year (I'm guilty), but that's why people love it. When you get call of duty, you know what you're getting. That's why it sells. It caught on early, and it wasn't ever changed.