I think the main thing that helped me when DS was three (which btw was his most challenging age, he calmed down a bit at 4 and alot by 5....) was looking at my expectations.
If you can change your expectations rather than the child's behaviour this is really helpful imo. One main expectation to bin first off, imo, is that the 3 year old will do as they are told. Why would they? Unless you're going to squash their spirit and terrify them into being submissive, which you're clearly not, why would they?
you have to give them a reason to do what you say, which is not always as simple as "Put your shoes on we're going out", to a 3 year old going out does not necessarily = shoes
therefore find another 'reason' eg make it a challenge for them. You need to play to what's motivating them not you; your motivation is, it is best to wear shoes to avoid frostbite/treading on glass/trip to a and e, etc etc but that is not part of the 3 year old's mindset!
DS loved being challenged to race me and that was a good reason to him to do stuff. Also making it part of his latest game - if they play imaginitively it's a gift to you because you can make the shoes part of an imaginary costume or something. Again, another 'reason' to him would be to assert himself and enjoy a frisson of slight 'naughtiness' so if I said "DS do not put those shoes on! No! whatever you do, step away from those shoes!!!" etc, then of course he couldn't resist putting them on
Sorry to bang on about the shoe analogy but it works with most stuff you want them to do
Another thing is to allow them to learn by experience. They don't want shoes on - fine, take them out and hold the shoes, they'll soon be asking for them when it's cold and uncomfortable and they've learned something too.
Obviously nothing works all the time, kids are all different and sometimes you're just not going to have the patience to fanny about but this worked for me with a challenging 3 yr old. HTH.