I play the Pyro. My reasons are as follows: I like fire, I can't hit shit with any other class (excepting Soldier and Heavy), The ability of the Pyro to ruin a players day is second only to the spy, I can set the WHOLE team on fire!, Ambush tactics are fun, I can kill from the grave, a well played ubercharged Pyro is THE most destructive force in close quarters.
I also play the soldier and heavy a lot too. I used to play the scout but I died to much. (I suck at being an engineer and spy... and I'm completely useless as a sniper)... I'm a pretty good medic as well.
I play Medic, because I enjoy the front-line support, and it's a very cooperation-based class. What makes TF2 aces to me is that it definitely rewards teamwork, and I can bump a team's cooperation up a notch or two the better I play. As I type this, it occurs to me that I haven't played TF2 for way too long (been farting around with Singularity, Bulletstorm, and another playthrough of S.T.A.L.K.E.R.)
I also play engineer because that class absolutely makes a difference on defense, and if our team doesn't have the engineers needed to win, I'm on the case.
I also play spy because it's very hard to do well, but really gets my adrenalin going when I do. Also, it's immensely satisfying to turn the battlements in 2Fort from a sniper fest to a machete parade, as they're too skittish after many backstabs to fire up their weapons.
You know, it used to be a toss up between soldier and spy. These have always been my favorite classes in fortress games; the soldier because, while he can be played basically as Vegeta mentioned, he also has surprising depth and requires a lot of pure aiming and leading skill at higher levels of play. Bouncing around your opponent where you want them, juggling them in the air; an experienced soldier can control the entire battle through manipulation of the enemy's movements with his shotgun and RPG.
Spy I liked because of the subterfuge. Such a classy class.
But lately in TF2 I think my favorite class is slowly becoming battle medic. I am a goddamn medicinal vampire on the field and there are few things that you can throw at me that will put me down. That combination of combat effectiveness mixed in with supporting your team just enough that you're called a credit is a great feeling.
Definately the Spy.
I like the way it is hard to master and it makes TF2 more challenging for me.
It just feels wrong to spam rockets on someone, killing him for obvious reasons.
Shoving a knife up someone's ass just feels more satisfying
I mostly waffle between Scout, Heavy, and Medic. I love acting as a combat assassin, but I also love the process of positioning and health-whittling that the Heavy encourages, but I also love healing people and giving out free Ubersaws to the face.