Chemically, the difference between the two is that hard water contains calcium and magnesium ions, while soft water does not. Soft water is easier to lather with than hard water is.
Hard water tends to leave residues behind, which is why films form on faucets, in drains and in water pipes. It also causes formations in coffee pots and tea kettles, which is why some brands recommend descaling the machines regularly.
The acidic nature of rain causes hard water; rain is acidic because it combines with carbon dioxide to form a weak acid. The rain then dissolves rocks and other compounds into the water, creating hard water.