Talk and listen to him, and work with him. From his point of view, you're trying to force him to do something that's wrong for some reason or other. His reasoning will be completely different to yours but that doesn't mean you can simply overrule it. Explain why they have to do something and what'll happen if they don't. And give hugs when they get upset about it.
Find a way to make the situation work for him. Toddlers are people, with by our standards a weird outlook on life. Every one is different, and don't assume that there's a standard way of doing things that'll work. If there were, we'd have figured it out by now, everyone would know and we'd all be fine
Give him a choice of clothes to wear - change the argument from "am I going to get changed" into "what am I going to get changed into"
Good idea - giving people a say in a process empowers them and makes them feel better about everything - toddlers and adults. My youngest can be stubborn until you give her something to control herself, like what clothes to wear etc.
Oh and beware of too much praise - when I was a kid I hated people making a fuss over me like that.
Also beware of too much praise.