Whoa - that looks like an exciting journey to take !
Travelling by train + bus is the cheapest way of getting there. Chennai (Tamil Nadu) to Shimla (Himachal Pradesh) distance is 2547 km and you can get there by train + bus in just over 67 hours and 15 minutes. However, flight + cab tickets come also cheap with fares starting from ₹ 8288.
The weather is great for a daytime picnic or game of cricket.