There’s no winter in Karnataka as such so I would definitely suggest you Rainy season is the best time to travel in Karnataka. You would definitely love the scenery all over the places. Everything is green and I think to travel in such greenery would be eye satisfying.
Depends on what you plan to see in Karnataka. For places like Hampi and all, Nov - Dec is ideal. For monsoons, places like Chikmagalur, Coorg and Sakleshpur are ideal. For summer, wildlife sanctuaries like Kabini, Bandipur, Bhadra etc. Beaches - anytime except monsoons.