One of the challenges of forecasting winter weather occurs when temperatures are near freezing and there is precipitation. Depending on the thermal profile of the atmosphere and what the temperature is between the cloud and the ground, precipitation usually falls in one of four forms: rain, snow, freezing rain, and sleet. Rain and snow are the easiest to describe. Rain is caused when the temperatures between the cloud and ground, especially closer to the surface, are above freezing and can melt any snow/ice that is falling. If temperatures are below freezing from cloud to ground, precipitation will fall as snow.
Sometimes, there are layers in which temperatures will rise and fall below freezing. Depending on where they are, that will determine the type of precipitation. If the temperatures in the cloud and at the ground are below freezing, and there is a layer in between where the temperature is above freezing, this scenario will produce sleet. This is because snow will fall from the cloud, but once it hits the warmer layer or air, the snow will melt into rain. Once this rain enters the below freezing layer again, it will freeze as an ice pellet. The final scenario calls for rain to fall to the surface, whether it melted on the way down from the cloud does not matter. If the temperature right at the surface is below freezing, the rain will freeze, and this is freezing rain. This can cause damage to power lines and trees because water will freeze on surfaces.
Hail does not fall during a winter storm, and people often confuse hail with sleet. Hail is caused by a strong updraft in a thunderstorm, and sleet as I described is caused by the melting and refreezing of precipitation. There is a fifth type of winter precipitation called graupel. This is the least common form of winter precipitation, and is caused when a raindrop interacts with and freezes onto to snowflake. Graupel does look like small hail, but as described above it is not hail because of the way it forms.