Traffic was severely disrupted in east and north Hampshire as heavy snow swept across the county for the second time in four days.
The Met Office issued a severe weather warning and more snow and sleet were expected while temperatures were set to drop overnight.
It said accumulations of up to 10cm (4in) of snow were expected in places, especially on higher ground.
Drivers were stuck on the M3 as snow and ice made conditions "treacherous".
The A31 in Alton was closed both ways due to ice and snow between A339 Selborne Road and Boyneswood Road.
The A272 at Petersfield was also shut both ways at Ramshill because of the snow.
Several other roads in the area were impassable and motorists were advised to only travel if absolutely necessary.