What is the difference between various types of flour?
There are actually quite a few differences between the different types of flour. The number of different types you store will really depend on your particular requirements.

All purpose (or plain) flour is a blend of different types of wheat and has a relatively low protein content.

Bread flour is typically made from a single, high protein wheat. It also has a higher gluten strength. It may also contain ascorbic acid (vitamin C)

Cake flour is also typically made from a single type of wheat (different from the wheat used in bread flour) and has a high starch content, it also has the lowest protein content.

There are many other types of flour, all of which server specific purposes, for example;

Self raising flour, Whole wheat flour, Chick pea flour, Rice flour, Semolina flour 

And others.

Essentially it's important to use the right type of flour for a give recipe.