Lanzhou to Dunhuang: trains, flights and what each one really costs you
Lanzhou is where most international trips to Gansu begin — direct flights from Beijing, Shanghai, Chengdu and abroad, then one long haul west. Dunhuang is 1,050 km away along the Hexi Corridor. There are two ways to do it, and one of them lets you see Zhangye and Jiayuguan on the way.
The numbers
| Train (D-series) | Flight | |
|---|---|---|
| Time | 7h44m to about 9h | About 1h50m |
| Example | D2749: Lanzhou West 11:58 → Dunhuang 19:42 | Evening services, e.g. Lanzhou 19:55 → Dunhuang 21:45 |
| Typical fare | From about CNY 324–344 second class | Seen from about CNY 200 on the Dunhuang–Lanzhou direction (discounted); CNY 700–1,300 undiscounted |
| Stops you can break | Zhangye, Jiayuguan | None |
| Arrival | Dunhuang station, about 13 km from the city | Dunhuang airport, about 13 km from the city |
Option A — the train, corridor by corridor
The line runs Lanzhou West → Zhangye West → Jiayuguan South → Dunhuang, which is exactly the order most people want to travel it. Buy it as legs rather than one ticket if you plan to stop:
- Lanzhou West → Zhangye West: a few hours up the corridor; the Rainbow Mountains (Danxia) are reached from Zhangye.
- Zhangye West → Jiayuguan South: short hop; the fort and the Great Wall's western end are here.
- Jiayuguan South → Dunhuang: the long western stretch into the desert.
Direct Lanzhou → Dunhuang services also exist if you would rather skip the stops, and conventional overnight trains run the same corridor for travellers who want to sleep through it.
Booking with a foreign passport
- 12306 (official app/website) works with a passport number and is the cheapest and most complete source of seats, including releases 15 days ahead.
- Ctrip / Trip.com accept foreign cards and add a small service fee; useful when 12306's identity check refuses your document type or when the app is fighting your phone's region settings.
- Your passport is the ticket — it is read at the gate. No printing needed.
- Second class is fine for this route; upgrade to first on the 8-hour run if you want elbow room and a quieter carriage.
Option B — fly, but watch the airport transfer
- Lanzhou's airport, Zhongchuan (LHW), is about 70 km from the city centre with a dedicated rail link to the city and Lanzhou West — allow an hour and do not cut it close.
- Dunhuang (DNH) is small and quick: about 15–20 minutes to town, taxis and hotel pickups are easy.
- Flights are frequently delayed in spring sandstorms (April–May) — a reason to keep the flight early in your trip rather than on the last day.
Getting around once you arrive
- Dunhuang city → Mogao Caves: you do not go to the caves directly. Go to the digital exhibition centre, which is where tickets are checked; taxis and hotel shuttles run there in about 15 minutes from the centre.
- Dunhuang → Mingsha / Crescent Lake: inside the city, 10 minutes by taxi.
- The western line (Yumen Pass, Yardang): roughly 180 km of desert each way, effectively car-only. A private car for the day costs about CNY 566–1,000 for the vehicle, which is why two or more travellers should always compare against per-person tours.
- Zhangye → Danxia: the scenic area is about 40 km from the city, with shuttle buses from the north gate; a taxi or day car is the norm.
Booking windows cheat-sheet
Mogao Caves tickets at 30 days, train seats at 15, Dunhuang hotels tightening from May. One email with the dates to circle for a corridor trip.
Sources
- Ctrip train pages for Lanzhou–Dunhuang, 2026 summer timetables (D2749 11:58 → 19:42, second class from CNY 324–344).
- 高铁网 Lanzhou–Dunhuang timetable listing (1,050 km, 11 services on the sampled date).
- Ctrip flight listings for Dunhuang–Lanzhou, June 2026 (from CNY 200 on discounted dates; CNY 1,270 full fare).
- Spring Airlines timetable page for Lanzhou–Dunhuang (about 1h50m in the evening bank).
- Operator listings (Klook, GetYourGuide) for Dunhuang private-car day rates, September 2026.
Timetables and fares above are a snapshot. Verify on 12306 or with the airline for your exact dates — that is what we do before every trip.