My DS has very little tolerance for *pain.* If he bumps into a wall, he'll become angry and say something like, "I don't like that wall. I want to break it." If his twin accidently bumps into him, steps on him, etc. he hits her out of anger/retaliation. Obviously, this behavior is unacceptable for us. He has no concept of "purpose" versus "accident" which I suppose is somewhat understandable at this age.
This morning I decided I am going to try something that I did for a few "best friends" when I worked at a school. For example, I was tired of these two particular first grade best friends that would come up to me to complain about their friend. So one day, and it just so happened to be on a Monday (!) I told them that they were not allowed to play with each other, talk to each other, be near one another, etc. for one week. They were devastated. I told their parents what I was doing as well and had their support. The following Monday I told them they could now be together. After that, if either one came to me to complain about the other I reminded of them of the time they were separated, and that they needed to figure out what they could do to not be mad at the other person. That seemed to help quelch any disputes. Soon they stopped coming to me to complain. They figured out what they needed to do to work things out so they could keep playing together.
I had a talk with DS today and told him that if he hurts his sister, he will not be allowed to play with her at all the rest of the day. And of course, I covered some other things which I won't bore anyone with here. If anyone has other suggestions, I gladly welcome them!