What's the difference between verhindern, hindern, behindern - in dictionary they seem to have the same or very similar meaning?
verhindern is "to prevent something".
hindern is "to stop somebody from doing ...".
behindern is "to make it harder for (obstruct, hamper) somebody to do ...".
- "Ich möchte dieses Gesetz verhindern" - "I want to prevent this law"
- "Ich hindere dich wegzulaufen" - "I stop you from running away"
- "Ein Läufer hat den anderen behindert" - "One runner hampered the other one."
Etwas verhindern is impersonal and quite strong. Wenn ich etwas verhindere, then it won't happen.
Jemanden daran hindern, etwas zu tun means something like prevent somebody from doing something. So you know who does it, and you don’t want him to do it. It’s as strong as verhindern, but if I prevent Hans from doing something, Max could do it instead. This won’t happen with verhindern.
behindern doesn’t mean prevent something, it only says that it’s difficult for somebody to do something because of something else, which behindert him.
Ich verhindere den Bau der Straße – I prevent the street from being built. (I convince the government not to build the road.)
Ich hindere ihn daran, die Straße zu bauen. – I prevent him from building the street. (I take him to Australia, so he can’t build the road.)
Ich behindere den Bau der Straße. – I hinder the construction of the road. (I sit on the place where they want to build the road, so they have to carry me away before they can build the road.)
Note that limitations to the absoluteness of verhindern or hindern are often dropped and become appearant only from context. E.g., a newspaper might write:
Demonstranten verhinderten den Bau der Straße – Protesters prevented the construction of the road.
Depending on the context, this may apply only to the past (if the protestors do not sit on the street again tomorrow, the street will be built) or be a final outcome (protesters convinced the government not to build the road).