This
.pdf had a great explanation, for anyone who wants to get the gist of it. It's basically what
mehc012 said.^^
"The question now arises, why does liquid water have a higher heat capacity than ice?
Temperature is closely related to the kinetic energy (velocity), but there are other interactions at work in matter. For example, water molecules in liquid form have rotational energy, whereas they are more static in ice. Additionally, hydrogen bonds in water can stretch and rotate, and protons themselves can be exchanged between water molecules. When energy is added to liquid water, it can be absorbed by all of these additional interactions not found in ice. In short, there are other places for the energy to go besides kinetic energy. Thus, raising the temperature of liquid water requires more energy than raising the temperature of ice. What about water vapor? The justification just employed makes sense for this phase of water, too, namely because hydrogen bonds are not present in water vapor. In fact, the difference in heat capacities of water in its different phases can give you some idea about how important hydrogen bonding is in liquid water.
To summarize, the heat capacity is related to the number of internal degrees of freedom of a substance. If a substance has a large number of internal degrees of freedom (e.g. bond stretching, bond rotation, etc.), it will tend to have a higher heat capacity than a substance with a lower number of degrees of freedom. This is because heat added to a system increases not only kinetic energy but bond vibration and rotation as well."