If you are a budget traveler then Train is the best option otherwise if you don't have much time then here is how you can manage Pune to Delhi Flight - 2500 INR
Delhi to Pathankot train- 300 INR
Pathankot to Mcleodganj Bus- 100 INR Good Luck!!
It depends whether you prefer budget or time. If you're budget constrained buy a train ticket from pune to Pathankot which is nearly 90 kms away from Maclo & then from Pathankot buses are easily available for Maclo. But if the constrains are of time, then you should prefer buying Flight ticket to Chandigarh and then hiring cabs or bikes whatever prefered which are easily available there or otherway around is you take Flight from Delhi to Kangra Airport and then reaching Macleoganj which is nearly 35kms from Kangra.
Best way to reach Mcleodganj depends on how much is your budget and your preference for bus, train or flights.
If you want to do budget trip then take-
Train from Pune to Delhi
Volvo/ Local Bus to Mcleodganj If budget is not an issue then take-
Flight from Pune to Delhi
Hire taxi or take Volvo bus to Mcleodganj
There is no direct train or flight connectivity. By air the best possible way would be via Delhi as even though at Dharmasala there is an airpot but not many flights frequent there. From there you can take bus. Also you can take a train to Pathankot and from there to Mcleodganj again by bus.