The best months for visiting India are between November and March when the weather is cool and dry. This is the perfect time of the year to enjoy vacation in places like Delhi, Varanasi, Agra, Goa, Madhya Pradesh and Rajasthan.