The Heavy is Team Fortress 2's most iconic class. He graces the cover of the retail box, he was selected to represent the game in Poker Night at the Inventory, and he was the subject of the very first "Meet the Team" video. So what does the giant man-beast actually do, other than brandish his impossibly large weapon and distinct raa-shun accent? As one might guess, the Heavy is the game's tank. He's slow, he takes damage, and he deals damage. No other class can stand toe to toe with him in close/mid-range combat. As one again might guess, his speed is also his greatest drawback, especially when he's alone with low health. However, nothing makes an opposing player say "oh shit" like turning a corner and running right into the Heavy's mini-gun and his murderous grin.
The Heavy is his mini-gun. It is his most defining feature and his greatest asset. If I'm on offense or a symmetrical map I stick with the normal one, but for defense I like Natacha's slowing powers. The Brass Beast makes the Heavy far too slow for my tastes, so I don't use it despite the damage boost. I always use the Sandvich as opposed to the shotgun. Being able to restore my health after a bloody battle is a lot more valuable than having a desperation weapon. I rarely get into a situation where I use the Heavy's melee attack unless I'm just screwing around, but I usually have the KGB equipped due to the slim chance that the crit boost will come in handy. The Heavy's unlockables don't change him all that much, but Natascha can be a godsend when facing a fast moving onslaught.
The Heavy lives up to his name in every possible sense. With a base health of 300, the Heavy can out-tank everything in sight. With the mini-gun, he can outgun anything in the game except for a fully-upgraded and non-Wranglered sentry gun. This makes him invaluable on both offense and defense despite his speed handicap. Heavies can put a stop to enemy advancement almost single-handedly (especially with Natacha's slowing effect) and their resilience can be crucial when it comes to pushing forward through an enemy's defenses.
For these reasons you will likely notice that the Heavy in the most common Medic buddy in the game, and with good reason. The full buff gets him up to a whopping 450 health, and an übered Heavy in the right position is a (literally) unstoppable force. This works for pushing forward (especially when it comes to clearing out an enemy nest) and for stopping an attacking group in its tracks. The Heavy is also a good choice to use the Kritzkrieg on, since his already powerful gun will be turned into a spinning death dispenser and he'll have the health to sustain a counterattack.
Speaking of suppressing fire, the Heavy can be quite effective at area denial when he can sit at a dispenser and just fire away. The mini-gun doesn't ever need to reload, so with an infinite ammo supply the Heavy can sit back and dispense pain upon the tiny baby men on the other team. The sight of a stream of bullets will usually give an advancing enemy force pause at the very least. This strategy is especially effective with Natascha, as slowing down opposing Medics and Pyros can make them sitting ducks for friendly Snipers.
The Heavy is slooooowwwwww, again living up to his name. He has the slowest movement speed out of all the classes, and when he's firing the minigun he is slowed even more. This makes him an easy target for the enterprising Sniper, and his big, beefy back is ripe for Spy stabbin'. While Heavies can outlast everyone else in terms of health, he has a hard time retreating due to his slowness. In the early days, this made him extremely reliant on nearby Medics/dispensers, especially if he was on fire. The introduction of the Sandvich has allowed Heavies to be more independent to a certain degree, but if he's at 50 health with a Pyro chasing him the odds still aren't good.
Even worse, it takes the Heavy a long time to get to where he needs to go. He's incredibly reliant on teleporters (Pro Tip: If you're a faster class and a Heavy needs to take a teleporter, let him take it-seriously) and without them he'll often spend more time getting to the fight than actually fighting. On a related note, there must be precise timing involved when using an über on a Heavy. Use it too soon and the Heavy won't be able to get into attack position soon enough, and wait too long and the Medic will likely die before he can pop it.
On another related note, positioning is an overall key, since once the Heavy starts firing he usually isn't fast enough to reposition without making himself vulnerable. Many a time will an unsuspecting Heavy turn a corner and start firing, only to be faced with Soldiers/Snipers/etc. that are out of practical attack range. Again, the Heavy has a hard time getting out of trouble, so picking the wrong moment to rush in is usually a death sentence.
The Heavy will probably feel at home to players who prefer playing melee fighters or other damage dealers. Nothing stands up to him at medium and close range, and getting a four or five kill streak off of an über is one of Team Fortress 2's greatest thrills. Remember, you are big, strong man. Crush the enemy like the tiny baby cowards they are.