I'll be one-hundred percent honest: when I play Garen, I do the same shit I do all the time laning with very little thought.
I last hit until the enemy gets close, chase them with my Q and when they try to trade I just use my shield so it hits a wall of damage reduction, then proceeding to spin on them to zone them out. I do this for almost opponent in top. I can usually out sustain them with ease, one of the exceptions being Darius, but even then my instinct when he uses his Q is to get as close to him as possible so he doesn't get max damage/healing. Garen is easy to cheese with, I can out trade most champions easily without having to even think about it much...Though, this is just when I get to play him, usually I'm mid lane or supporting.
Why do I play Garen though when I prefer top laners like Singed, Mundo, and Renekhton? Because Garen is just so damn forgiving with mistakes, its disgusting. Keep in mind, I've been playing him since the olden days of the pre-season when his scaling with AD was so bad, you had to stack sunfire capes just to scale into late game (when they could stack, since it was before the unique passive item change). I also own all of his skins, even though I swore I'd never get Rugged ("Thanks mystery gifting...", I said sarcastically).
[zombie-nunu-bummed]