Put it like this
CoD is for people with an unhealthy obsession for recreating real war but with a few tweaks
TeamFortress 2 is for people with an unhealthy obsession for hats, but just want to have a massively fun and hilarious time.
Personally I prefer TF2 because it runs on
Rule Of Fun and the high health means the time spent actually in direct combat instead of running or hiding is massively higher than in CoD.
+Suprisingly the game is more balanced.