Without ESP, I like Medic the best. Mainly because the "pray and spray" abilities of a medic are pretty useful when you get surprised by an enemy walking around a corner. It's also easy to get loads of points by just throwing medkits all over the place.
In general, without ESP, I swap between Medic and Engineer depending on the map. When the tanks start rolling out, I'll switch to engineer and kill from the tanks and get points with repairs.
With ESP, I've found Assault to be the most fun. You never have to worry about ammo, which is really useful when you can live a long time working the map-perimeter, picking people off. And, for actually playing to help the team win, Assault is a good setup for actually getting right down in the shit and activating/deactivating the explosives/etc (as is Medic).
Recon is sort of fun in short-bursts, but I sort of suck at it.
Medic is an alright class you really have to be a team player type of person. Got to watch everyones health, and no one says thank you You can always team kill then revive too rank up your medic class lol