Obviously, I'd say Engineer but that would only be half true. As of late, Medic has been my favorite class to go. Engineer is fun for camping where ever (especially on CTF maps), but it gets
so boring real quick. You end up wanting to go another class and be up front with all the action. I find engineer the most fun is when I can move up and put my sentry where everyone else is instead of hiding in the back alone.
Medic is the class I would probably have to say is my favorite at the moment. Medic is not nearly played enough (at least in casual, you'll see 20 medics on Jailbreak.) It's a helpful class but it can become frustrating when the people you're healing and helping don't care about you and let you die a lot. Which is probably the main reason why people don't like playing medic. But since I have been playing medic more, I've learned to defend myself well in case of situations where my pocket abandons me or they rush in all suicidal and die before I'm even ready. I use the Crossbow for my primary because I can use it to heal as well. When I'm way far back and trying to catch up, I can launch bolts to support my team while I'm on my way, I have pretty decent aim with it and use it often. Medic is a fun class to play when you have a good team. The health regeneration and the insane crits are a good boost too.
I don't ever get bored with Medic either, like I do with Engineer. Medic is always up front and has a big task trying to keep teammates healed and alive. So yeah, in the end I'd have to go with Medic.