What do you feel like doing or seeing in India?
All the best beaches, across Gujarat, Maharashtra, Goa, Karnataka & Kerala are in the south, with a decent night life, temples, hill stations and historical towns thrown in. The best time to visit the south is December-February.
This is also the best time to visit central India, Maharashtra and Madhya Pradesh, to see some of the World Heritage sites. It's either hot or rainy in these places during the rest of the year, though these places do contain the best national parks in the country and the best time of year to see these (and tigers) is April-May because this is the only time of year that your view of animals isn't obstructed by tall grass, it being the dry season, and the animals all tend to gather at watering holes, making them easier to spot.
If you feel like medieval palaces, Mughal architecture, the Taj mahal, sand dunes, forts, etc, you will need to go north i.e Delhi, Rajasthan & Punjab, and again the best time to see these is either Nov, before it gets too cold and hazy, or Feb. Best to avoid Dec and Jan.
This holds true for the N.E as well. It's a great place to visit for hiking, root bridges, caving, food and national parks, and the best time is either Nov or February-Mar. Avoid Dec-Jan because of the long holiday season where everything is shut, and because of the cold.
If you feel like visiting the Himalayas or some of the other northern mountain ranges for the views or to go hiking, you'll want to visit Ladakh, Himachal and Uttrakhand, which are best visited in the warmer months, May-Jun.
So there you have it. May-Jun for the mountains and national parks. Nov-Feb for the rest of the country.