You would need nearly a month to enjoy all these places, else you might end up rushing. Sharing below what I feel would be the best duration and mode of transportation (choose as per your budget). Happy traveling! :) Mahabaleshwar - 2 days, bus/cab from Mumbai (6 hr)
Goa - 3-4 days, overnight bus/cab from Mahabaleshwar (8 hr)
Hampi - 2-3 days, train (Hospet station 6.5 hours; not running daily, overnight bus/cab from Goa (8 hr) stay on the other side of the river Mumbai - Train from Hospet
Udaipur - 3-4 days; train/ flight from Mumbai
Jaisalmer - 2-3 days, train/bus/cab from Udaipur (9 hours)
Jaipur - 2-3 days, train/bus/cab from Jaisalmer (10 hours)
Delhi - optional, bus (6 hours)
McleodGanj - 3-4 days inc. Triund, bus from Delhi (12 hours)
Shimla - 2-3 days, bus/cab from McloedGanj (8 hours)
Rishikesh - 2-3 days (may be more if you want to explore yoga), bus/cab from Shimla (8 hours)
Delhi - bus/cab from Rishikesh (7 hours)