Bipolar Transistor HBridge Motor Driver:
The motor coils have a significant inductive component.  Very loosely and from the point of view of a circuit only (not how the physics really works), inductors can be thought of as giving inertia to current.

Imagine what happens when a current has built up in a inductor, then a switch in series with it is suddenly opened.  The current can't stop instantly (hence the inertia analogy), so will initially cause whatever voltage is necessary to keep it going.  In this case, that will be causing a arc between the switch contacts.  The greater this reverse voltage, the faster the current dies down.  Eventually it gets to zero, the arc stops, and the switch if truly open.  This may take &micro;s to ms depending on the value of the inductance, the amount of current thru it, how fast the switch contacts can separate, etc.

The same principle applies whether the switch is a mechanical contact or a transistor.  Transistors can turn off very quickly, so the high voltage caused by the inertia of the current the transistor is trying to stop builds up very quickly as well.  It can easily build up to levels that will damage the transistor, or something else connected to the same line.  The diodes provide safe conduction paths when this happens.  They give the current a place to flow so that it doesn't have to cause a high voltage to keep flowing.

Another use for the diodes is to deal with permanent magnet motors that can be driven externally.  Such motors work backwards as generators.  If driven too fast, they can cause too high a voltage just from the generator action.  The diodes again provide a path for this current to go so that the voltage can't get much past the power voltage.  Note that this makes the motor essentially drive the power rail instead of the other way around.  If the motor can be driven like that, this needs to be taken into account in the design of the larger system.