Yeah, whenever someone said something about "The terrible Twos", I corrected them and said "They're the Terrific Twos!" I think epecting the best helped, and then a friend said "For some moms, especially if they had no problems with the 'twos', they think they're past the worst and get blindsided by 'terrible threes'."
I had a lot of that, too. Losing your patience ALWAYS backfires. Punishment will seem to work great in the short-term, but it ultimately works against what you want in the long term - a genuinely caring child who is respectful because they can truly empathize. Instead, you'll get a a kid who behaves, but it's because he is afraid of being punished and afraid of you.
If you want respect from children, you have to learn how to respect them (without getting walked on). If you want them to control their emotions, you have to model it. It's hard - really hard - I struggle with it all the time and sometimes screw up royally.
When something happens that makes you so mad you want to yell or stike out at him, close your eyes for just a second and imagine yourself screaming or neck-throttling, selling him to the gypsies - whatever! Then take a deep breath. The urge to react (or over-react) passes so quickly that just imagining it silently usually does the trick, but it makes you *seem* all cool and collected to your kid, and anyone else. (It also works well when you want to wring your husband's neck, for whatever reason).
Try this exercise: try to remember what it's like to be that age - it's really hard to do. Think of a time when an adult accused you of doing something bad (whether you did it or not). Sometimes people have acute memories of this kind of pain - they carry intensely painful memories with them - and remembering it helps to keep them from making the same mistakes. Think of a time when you expected to be punished but an adult responded with unexpected kindness and how it made you feel.
A couple of great books "How to Behave So Your Preschooler Will Too!" and "Positive Discipline for Preschoolers".