I play as a medic whenever I can, but since most of the time I play is offline I'm forced to play as a different class because my bots won't do anything. My second favorite class is engineer, with the tertiary runner up being Op.
Medic: I love having my teammate's lives in my hands. It's so much fun to be a light and run around free-running and stuff to go and heal a bunch of your teammates.
Engineer: It's a lot of fun holding down a position while either you or a teamie completes an objective. Just find a good place, buff your gun, set up a (Gatling) turret, place a land mine, and you're good to go.
Operative: Probably one of the most fun things to do as a light body type is to disguise as an enemy, run around behind them all, and then just unload on them and take down nearly a whole team. It's also fun with the caltrop (spelling?) grenades when you're hacking. Just throw it in an out-of-site doorway and it'll alert you when an enemy comes, also weakening him.
I don't end up playing as the soldier all that much though, only on my heavy which I rarely ever play as. Seeing as I almost
always play as a light-type.