How to reach McLeodganj, Himachal Pradesh
By Ankur · Updated 3 Sept 2026
McLeodganj sits 6 km above Dharamshala on the Dhauladhar slope. Almost every route in passes through Dharamshala first — except the overnight buses from Delhi, which come all the way up.

McLeodganj is 6 km and about 25 minutes above Dharamshala, on the same Dhauladhar hillside in Kangra district. Because it sits above the main town, most routes route you through Dharamshala first and you cover the last stretch by local bus or taxi. The exception is the overnight bus from Delhi, and it is the exception most people should take — several services run all the way up to McLeodganj itself, so you step off at the village entrance rather than transferring at 6 am.
McLeodganj at a glance
- Distance from Dharamshala: 6 km, about 25 minutes up the hill.
- Distance from Delhi: about 500 km — 11–14 hours by overnight bus (several run all the way up), 10–12 hours driving, 1.5 hours by air plus the transfer.
- Nearest airport: Kangra Airport at Gaggal (DHM), about 18 km, around 45 minutes by taxi.
- Nearest railway station: Pathankot, about 90 km and 3–4 hours by road.
- Elevation: about 2,080 m.
- Distance from Dharamkot: 2 km, a 20–45 minute walk uphill.
By air: Delhi or Chandigarh to Kangra Airport
Kangra Airport at Gaggal (code DHM) is the nearest airport — 13 km from Dharamshala, so around 45 minutes to McLeodganj by taxi once you factor in the climb. IndiGo and SpiceJet operate here from Delhi, roughly 1.5 hours in the air, and from Chandigarh. Those two are the only origins to plan around.
Gaggal flies under visual rules on a short valley runway, which means fog and low cloud cancel or divert flights fairly often, particularly in winter and the monsoon. Book a morning departure — they have the best odds of going — and never put a tight onward connection behind a Gaggal arrival.
If the flight schedule does not work, Amritsar at roughly 200 km (4–5 hours by road) is the better alternate for this cluster: more airlines, more frequency, and an easy drive in. Chandigarh at roughly 250 km (5–6 hours) also works and is better placed if you are continuing to Bir.
By train: Delhi to Pathankot, then 3–4 hours by road
No line reaches McLeodganj. Pathankot is the practical railhead, about 90 km out and 3–4 hours by road. Several overnight trains run from Delhi and fill up in season, so book ahead. Tickets are booked on IRCTC, Indian Railways' official site (visitors from abroad can register with an overseas mobile number; carry your passport as ID on board), or with less friction through a third-party service such as MakeMyTrip. From Pathankot you can pick up a bus or taxi onward — buses take 4–5 hours to Dharamshala.
The Kangra Valley narrow-gauge railway came back into service in June 2026, four years after the Chakki bridge collapse in 2022 took it out. It is a lovely, extremely cheap ride, but it consumes most of a day, tickets are sold only at the station, and it usually suspends through the monsoon. Do it as a scenic day trip from the region once you have arrived — the Palampur and Bir stretches are the good ones — rather than as a way of getting in. Check it is running before committing a day to it.
By bus: overnight from Delhi, all the way up
This is the route most people take and the one worth taking. HRTC and private operators run overnight Volvos and sleepers from ISBT Kashmere Gate and Majnu ka Tilla in Delhi, departing roughly between 19:00 and 22:00, with a journey of 11–14 hours. Ordinary services start around ₹700; Volvo and sleeper fares sit in the low thousands. Confirm the fare when booking. Seats are booked online — redBus is the app most people in India use, and FlixBus runs the route too; both issue an e-ticket you show on your phone, so there is no counter to find.
Look specifically for services terminating at McLeodganj rather than Dharamshala. McLeodganj's bus stand is right at the village entrance near the main square, so you arrive within walking distance of most of the town. If your bus ends at Dharamshala instead, local buses and taxis run up the hill continuously through the day.
Buses also connect from Amritsar (about 5 hours), Chandigarh (about 5.5 hours) and Pathankot (4–5 hours), generally into Dharamshala with the last 6 km to cover.
By road: driving from Delhi
Delhi to McLeodganj is roughly 500 km, realistically 10–12 hours with breaks. NH44 gets you to Ambala and Chandigarh over about 250 km of expressway-grade road; after that it narrows and climbs through Kiratpur, Una, Amb and Kangra. The final ascent from Dharamshala is steep, tight and busy with buses — take it slowly.
Fill up around Chandigarh. Fuel stations become sparse in the hills. Parking in McLeodganj is genuinely difficult in season, so if you are staying more than a night or two, ask your accommodation about parking before you drive up.
From the other towns
Dharamshala is 6 km down, about 25 minutes, with frequent local buses and taxis at the stand.
Dharamkot is 2 km away and genuinely walkable — 20 to 45 minutes uphill depending on your pace and load — or 10–15 minutes by taxi for around ₹150. Read How to reach Dharamkot first if you have heavy luggage; the road runs out before the village does.
Bir is 65–70 km east, 2.5–3 hours via Palampur and Baijnath. There is no direct bus from McLeodganj — go down to Dharamshala or out to Palampur and connect there. A direct taxi runs roughly ₹2,000–2,300.
Good to know
Monsoon runs from late June to mid-September. Landslides and road closures are normal, every journey takes longer than planned, and the narrow-gauge line usually stops. Leave slack.
No Ola or Uber operates anywhere in this corridor. Local taxi unions run all hired transport — settle the fare before you board, because quotes for the same trip vary two- or three-fold.
Money: carry cash, because UPI mostly won't work for you. India runs on UPI — the QR-code payment system on every café counter and taxi dashboard — but it needs an Indian bank account, so a foreign card or phone gets nowhere with it. (NPCI's "UPI One World" prepaid wallet for tourists can be set up at Delhi airport on arrival with passport and visa; the rollout is patchy, so treat it as a bonus rather than a plan.) Cards work at larger hotels and some cafés; most homestays, taxis and small eateries want cash. McLeodganj has several ATMs, though they run short on weekends in season; Dharamkot above has none.
Phone: buy a SIM in the Delhi airport arrivals hall. Airtel and Jio both have counters there; a tourist SIM needs your passport, visa and a photo, and activation can take a few hours, so do it before you leave the airport. Both networks cover the corridor's towns. Signal is solid around the bazaar and thins in upper Dharamkot. An international eSIM gives you data but no Indian number, which some bookings and one-time passcodes ask for.
Taxis at Kangra Airport work to union rates. Cars wait outside arrivals at Gaggal; expect roughly ₹800 to Rakkar, ₹1,200–1,400 to Dharamshala, ₹1,800–2,000 to McLeodganj and around ₹3,000–3,600 to Bir — confirm the fare before the bags go in. There is no ride-hailing here. Pre-arranging a pickup through your stay is normal and usually costs the same.
Getting from Delhi airport to the bus. Uber and Ola work in Delhi (they stop at the hills) and there is a prepaid taxi counter in arrivals. By metro, the Airport Express line runs from Terminal 3 to New Delhi station; change to the Yellow line for Kashmere Gate (ISBT is at the station) or Vidhan Sabha (a short auto-rickshaw ride to Majnu ka Tilla). Allow 1.5–2 hours across the city in the evening.
Overnight buses arrive early in the morning, usually before check-in time. Book your first night ahead and tell the property you are coming in early.
Winters are cold and occasionally icy. The roads stay open, but expect ice and some snow around McLeodganj and Dharamkot in January and February — worth knowing if you plan to drive the last climb yourself.
Nothing listed in McLeodganj this week yet — see what's coming up →