C.R.
Hi there...
I have a VERY difficult 3 year old. I also have 3 other children, and my 3 year old is by far my most difficult.
What I have found, is that it is ALL ABOUT CHOICES! If my son is misbehaving, whether it is through a fit, or through being too physical with another child, or anything else, I always give him choices. Although the choices are usually aimed at an end result I like, versus one that he likes, it still gives him the feeling of empowerment that he can make the choices himself.
For example, if I am in a "power struggle" around bedtime, His choices are usually that he either comes up with me without arguing, and he gets a book read to him, or he can argue and cry and he won't get a book. (Either way he's going to bed, but this way he has a little bit of control over the situation).
What works best is separating the child from the actual situation, and speaking to them directly and clearly. Give them the sense that they have to respond before continuing anything else.
You'll have to get creative with the choices, and always think it through before giving the choices, because the choices have to be something that you can follow through with. You must follow through and be consistent!
Good Luck!