Shimla has a subtropical highland climate, with moderately warm summers and mostly cool winters. The temperature averages from -4 celsius to 31 celsius over the course of a year.
October to February: If you like snow and snow activities, then October to February are for you. Snow is known to fall in December every year, but in the past several years has been falling well into February. With snowfall around Christmas time, the neo-gothic style buildings make the perfect white Christmas destination.
March to June: This is one of the best times to visit Shimla as the overall weather is very pleasant and perfect to enjoy the scenic beauty of this incredible hill station. The average temperature is about 12 to 15 degree celsius. In summer tourists flock from April to June to escape the heat of the plains. This can get very crowded. Avoid if you are looking for a budgeted trip to Shimla.
July to September: Even though the average total rain during monsoon season is much lower than other hill stations, still there are occasional landslides in Shimla. If you want to enjoy greenery, then visit Shimla or else avoid visiting it in rainy season.