only scratching the surface but here's some quick tips of mine (mainly my annoyances haha)
Engi: push forward when attacking, your team needs teleporters and dispensers to keep the push on. Scary how many attacking engineers I see setting up back near the spawn and staying there for the rest of the game just happily hammering away :/. Oh and help your fellow engineers out! you'll get buildings built quicker if you're both wrenching them! if you've got no metal and have nothing to do during set-up start wrenching those dispensers to get em built quicker! Call out and let your team know when spies are about, learn the "help" voice command too, you'll notice you'll probably have more success of taking out spies if you just club them outright with your wrench rather than blasting/reloading and missing with your shotgun.
Pyro: learn the range of your flamethrower, and learn it well, if someone's running away and is just out of reach after you've flamed them don't forget about your shotgun! it could be just the ticket ya need to finish the job before ya get ambushed. Very satisfying.
Spy: learn how long your visible when disguising and when cloaking, spectate a spy and check it out until you've gotten a general feel for it. A handy tip is the "B" key (or whatever you want to bind it to), it disguises you to your last disguise all in one handy press so you don't need to be fumbling through your weapons. When all exlse fails, you've been discovered and can't cloak whip out your handgun, it's a decent enough weapon. I think this vid sums up how to play a decent spy nicely:
http://www.youtube.com/watch?v=b-qD30EOO-o
Medic: General rule of thumb is to uber Heavy, Demo, Pyro or Soldier. Ubering pyro is one of my personal favs, you can do a hell of a lot of building damage. Heavies are great buddies, but you should heal everyone who needs it, oh and heal the other medics when they need it! keep each other alive so you can all keep the rest of the team alive. I swear it's like I've got a big
"DON'T heal me!" sign on me when I'm a medic and call out to another medic beside me. Just cause I'm wearing a doctors outfit doesn't mean I can perform brain surgery on myself!
Soldier: aim for the ground below your target, you mightn't get a direct hit but you'll at least cause splash damage, while a nicely aimed face rocket that whizzes pass your target at the last second does 0 damage.