Some of that depends on what you like to experience in terms of seasons, traffic, festivals and many other things. From our perspective an ideal time to go is one when weather is agreeable, prices are affordable and high traffic from crowds is low. This is not necessarily low season, but in this case we recommend a shoulder season, the time between the major events and the lowest season of the year.
India’s seasons for tourism and travel can be divided as such:
Off Peak: Jan 20th-May 15th / Sept. 1-Oct. 30th
Shoulder Season: Dec 26-Jan 24th / Aug 1-30 / Nov 15th-Dec 10th
Peak: June 1-July 30 / Dec 10-24th
A shoulder season like December 26th -January 24th is recommended for reasons like these:
Climate: October to March is the cool season and the best time of year in peninsular India weatherwise. The weather is beautifully predictable with blue skies and almost 9 hours of bright sunshine in most areas. Temperatures are bearable especially in the Dec-Jan Shoulder season from 50F-70F.
Crowds: Major festivals which take place in December have dies down at this point and children are in the midst of classes. Because the weather is mild, many people in India consider it too chilly to be out and about, which keeps the streets more open than usual.
Hotels and Transportation: Due to the smaller number of tourists from home and abroad many hotels, airlines and travel services have much more affordable rates in the shoulder season. Rooms need to be filled so prices are better and what is more you will not have to stay at overcrowded hotels and resorts making more relaxation for the traveler.
Of course there are downsides to shoulder seasons, businesses and services might not be at full service. Hotels may have renovations occurring and airlines, trains etc may have more limited schedules and in particular Delhi experiences heavy fog this time of year which causes flight delays.