see I'm a right old hippy at heart (well, a bit authoritarian sometimes but I think I've learnt that myself as a parenting response to my child - see, they teach us a bit too, don't they?) and DS1 started with his 'terrible twos' at about 15 months 9was co-sleeping, waking at 4am, refusing to go back to sleep, and so launched into a lifetime of kicking and hitting us...) We began by trying to reason and ignore and be emotionally sensitive (he's overtired, he's stressed, he's hungry - how do we deal with all those things?) None of that made any difference. So when he was about 2.5 we moved onto slightly firmer responses, including removing him from the situation. But we had full on tantrums then and in the middle of the night or the supermarket, it was quite wearing. I had quite a few abandoned shoppping trolleys as I removed him from the situation.
we gradually got better at recognising triggers (hunger in particular) but we did find it difficult when he was tantrumming to know whether to ignore, try to calm him somehow (holding/hugging always ended up as restraint since he was so violent at these times, and I was never very comfortable with restraint) or setting up a reward/consequences system.
The latter has always been our last line of defence. sometimes, when we're stressed and wound up to our limits, we have shouted but we don't like this.
Since he has got older, it has been possible to hold sensible discussions with him at a different time to the tantrums, in which we give him options and ask him to come up with solutions. This works up to a point, when he has clear written down lists and expectations, he can often manage these himself 9so for example a list of what he has to do to get ready for school and a timescale with a watch/clock so he can manage it himself. that way we don't have to get involved and the conflict points arise less. it all sounds a bit anal but it is what we've had to do.
DS2 meanwhile has just never or rarely had a tantrum, only hits infrequently and responds well to distraction or humour or explanation of why it isn't kind or sensible to do certain things.
I know people often look at my eldest kid and think either 'bad parents' or 'she's created that situation by shouting/rules/being a controlling parent' etc but I genuinely think it has been a dynamic created between our inexperience and his temperament. It's hard though.