In the more violent medieval society, most people were right-handed. People passed each other on the left in order to keep their sword arm free.
Since horses are mounted on the left, it made more sense to travel on the left-hand side of the road. This way the rider could safely mount at the side of the road, rather than in the middle.
It is believed that in around 1300 AD, Pope Benefice decreed that his followers keep to the left.
In 1773, the British government introduced the General Highways Act. It had a keep left clause, which later became part of the 1835 Highways Bill.
Napoleon changed France's driving habits to the right because he was left-handed. He wanted his sword arm facing his enemies.