The soccer hand ball rule is one which I have heard debated over many times by parents, players, and fans. I have seen them in the stands or on the field bewildered at why the referee didn't call a hand ball when it was clearly touched by that players hand.
A hand ball is called when a player (excluding the goal keeper when he is in the box) intentionally touches the ball with his hand or any part of his arm from shoulder to the finger tips.
This means that if a player touches the ball unintentionally, it is not a hand ball. This is sometimes called "ball to hand."
Often times you will see people yelling at a ref for not calling a hand ball when it was unintentional. These people are wrong.
Sometimes the ref will call unintentional hand balls. This is because he either does not know the rule or is just too scared to look like he missed a call.
Now, many would take this page a little too far and argue that they did not commit a hand ball when they did, saying that they did it by accident.
Here is a good way to tell whether it was intentional of not: if the player could have avoided it in any way, then it was a hand ball. If there was nothing that the player could have done to prevent touching the ball with his hand, then it was not intentional.
However, I cannot stress enough that it is up to the ref, and whatever the ref says (whether it be the best or worst call in the world) is what you should abide by.