There are 9 ways to get from Shanghai to Dunhuang by plane, train, bus, or car
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly from Shanghai Hongqiao International Airport
best- Fly from Shanghai Hongqiao International Airport (SHA) to Dunhuang (DNH)plane SHA - DNH
7h 54m¥2,405–4,705Train
cheapest- Take the train from Shanghai station to Jiayuguantrain Shanghai
- Take the train from Jiayuguan to Dunhuangtrain Lanzhou
35h 37m¥304–796Bus, train
- Take the bus from Shanghai to Yinchuan Nanmen Stationbus
- Take the bus from Yinchuan Nanmen Station to Lanzhoubus
- Take the train from Lanzhou to Jiuquantrain
- Take the bus from Jiuquan to Dunhuangbus
2d 3h¥907–1,153Drive 3,031.5 km
- Drive from Shanghai to Dunhuangcar 3,031.5 km
30h 39m¥2,557–3,693Fly from Shanghai Pudong International Airport
- Fly from Shanghai Pudong International Airport (PVG) to Dunhuang (DNH)plane PVG - DNH
6h 41m¥1,855–2,955Train to Hangzhou Xiaoshan International Airport, fly
- Take the train from Shanghai Hongqiao to Hangzhou Easttrain
- Fly from Hangzhou Xiaoshan International Airport (HGH) to Dunhuang (DNH)plane HGH - DNH
8h 9m¥2,577–5,644Bus to Nantong Xingdong Airport, fly
- Take the bus from Shanghai Zongzhan to Jiangsu Tongzhoubus
- Fly from Nantong Xingdong Airport (NTG) to Dunhuang (DNH)plane NTG - DNH
10h 32m¥1,292–5,642Train to Nanjing Lukou International Airport, fly
- Take the train from Shanghai station to Nanjing South Stationtrain
- Fly from Nanjing Lukou International Airport (NKG) to Dunhuang (DNH)plane NKG - DNH
8h 41m¥2,314–4,529Train via Gongchang
- Take the train from Shanghai station to Longxitrain Shanghai
- Take the train from Longxi to Dunhuangtrain Xi'an
44h 35m¥333–787
Shanghai Hongqiao International Airport (SHA) to Dunhuang (DNH) flights
Comparing Your Travel Options
The cheapest way to get from Shanghai to Dunhuang is to train which costs ¥300 - ¥800 and takes 35h 37m.
The fastest way to get from Shanghai to Dunhuang is to fly which takes 6h 41m and costs ¥1800 - ¥3000.
No, there is no direct train from Shanghai station to Dunhuang. However, there are services departing from Shanghai station and arriving at Dunhuang via Jiayuguan. The journey, including transfers, takes approximately 35h 37m.
The distance between Shanghai and Dunhuang is 2611 km. The road distance is 3031.5 km.
The best way to get from Shanghai to Dunhuang without a car is to train which takes 35h 37m and costs ¥300 - ¥800.
It takes approximately 7h 54m to get from Shanghai to Dunhuang, including transfers.
Shanghai to Dunhuang train services, operated by China Railways Z-Class, depart from Shanghai station.
The best way to get from Shanghai to Dunhuang is to fly which takes 7h 54m and costs ¥2400 - ¥4800. Alternatively, you can train, which costs ¥300 - ¥800 and takes 35h 37m.
Shanghai to Dunhuang train services, operated by China Railways Z-Class, arrive at Jiayuguan station.
Yes, the driving distance between Shanghai to Dunhuang is 3032 km. It takes approximately 30h 39m to drive from Shanghai to Dunhuang.
What companies run services between Shanghai, China and Dunhuang, China?
China Eastern Airlines, Juneyao Airlines, and two other airlines fly from Shanghai Hongqiao International Airport (SHA) to Dunhuang (DNH) 5 times a day. Alternatively, you can take a train from Shanghai station to Dunhuang Bus Station via Jiayuguan, Dunhuang, and Dunhuang train station in around 35h 37m.
- Website
- en.ceair.com
Flights from Shanghai Hongqiao International Airport to Dunhuang via Lanzhou
- Ave. Duration
- 6h
- When
- Monday, Wednesday, Thursday, and Saturday
- Estimated price
- ¥2,900–6,500
Flights from Shanghai Hongqiao International Airport to Dunhuang via Xi An
- Ave. Duration
- 6h 37m
- When
- Every day
- Estimated price
- ¥2,900–6,500
Flights from Shanghai Hongqiao International Airport to Dunhuang via Tianfu International
- Ave. Duration
- 6h 45m
- When
- Every day
- Estimated price
- ¥1,000–3,500
Flights from Shanghai Pudong International Airport to Dunhuang
- Ave. Duration
- 4h 25m
- When
- Tuesday, Thursday, and Saturday
- Estimated price
- ¥2,600–6,000
Flights from Shanghai Pudong International Airport to Dunhuang via Lanzhou
- Ave. Duration
- 7h 40m
- When
- Every day
- Estimated price
- ¥2,700–8,000
Flights from Shanghai Pudong International Airport to Dunhuang via Xi An
- Ave. Duration
- 7h 7m
- When
- Tuesday, Wednesday, Saturday, Sunday, and Thursday
- Estimated price
- ¥2,700–6,000
Flights from Shanghai Pudong International Airport to Dunhuang via Tianfu International
- Ave. Duration
- 9h 30m
- When
- Every day
- Estimated price
- ¥2,300–4,700
Flights from Hangzhou Xiaoshan International Airport to Dunhuang via Lanzhou
- Ave. Duration
- 7h 5m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- ¥3,100–7,000
Flights from Hangzhou Xiaoshan International Airport to Dunhuang via Xi An
- Ave. Duration
- 7h 45m
- When
- Every day
- Estimated price
- ¥3,200–7,000
Flights from Hangzhou Xiaoshan International Airport to Dunhuang via Shanghai Pudong International Airport
- Ave. Duration
- 8h
- When
- Tuesday, Thursday, and Saturday
- Estimated price
- ¥3,300–7,500
Flights from Nantong Xingdong Airport to Dunhuang via Xi An
- Ave. Duration
- 6h 50m
- When
- Every day
- Estimated price
- ¥3,400–7,500
Flights from Nantong Xingdong Airport to Dunhuang via Lanzhou
- Ave. Duration
- 8h 40m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- ¥1,200–5,500
Flights from Nantong Xingdong Airport to Dunhuang via Tianfu International
- Ave. Duration
- 9h
- When
- Every day
- Estimated price
- ¥4,100–6,000
Flights from Nanjing Lukou International Airport to Dunhuang via Xi An
- Ave. Duration
- 6h 22m
- When
- Every day
- Estimated price
- ¥2,700–6,000
Flights from Nanjing Lukou International Airport to Dunhuang via Shanghai Pudong International Airport
- Ave. Duration
- 6h 55m
- When
- Tuesday, Thursday, and Saturday
- Estimated price
- ¥3,100–7,000
Flights from Nanjing Lukou International Airport to Dunhuang via Lanzhou
- Ave. Duration
- 7h 50m
- When
- Every day
- Estimated price
- ¥2,700–6,000
- Website
- airchina.com
Flights from Shanghai Hongqiao International Airport to Dunhuang via Beijing Capital
- Ave. Duration
- 8h 31m
- When
- Every day
- Estimated price
- ¥3,800–4,800
Flights from Hangzhou Xiaoshan International Airport to Dunhuang
- Ave. Duration
- 4h
- When
- Monday, Tuesday, Wednesday, Thursday, Saturday, and Sunday
- Estimated price
- ¥3,400–5,500
Flights from Nantong Xingdong Airport to Dunhuang via Beijing Capital
- Ave. Duration
- 10h 50m
- When
- Tuesday
- Estimated price
- ¥4,000–6,000
Flights from Nanjing Lukou International Airport to Dunhuang via Beijing Capital
- Ave. Duration
- 7h 12m
- When
- Every day
- Estimated price
- ¥3,300–5,000
- Website
- shenzhenair.com
Flights from Shanghai Hongqiao International Airport to Dunhuang via Beijing Capital
- Ave. Duration
- 7h 5m
- When
- Every day
- Estimated price
- ¥3,800–4,800
Flights from Hangzhou Xiaoshan International Airport to Dunhuang
- Ave. Duration
- 4h
- When
- Monday, Tuesday, Wednesday, Thursday, Saturday, and Sunday
- Estimated price
- ¥3,400–5,500
Flights from Nantong Xingdong Airport to Dunhuang via Beijing Capital
- Ave. Duration
- 10h 50m
- When
- Tuesday
- Estimated price
- ¥4,000–6,000
Flights from Nanjing Lukou International Airport to Dunhuang via Lanzhou
- Ave. Duration
- 5h 45m
- When
- Tuesday, Thursday, and Saturday
- Estimated price
- ¥2,600–5,500
Flights from Nanjing Lukou International Airport to Dunhuang via Beijing Capital
- Ave. Duration
- 7h 12m
- When
- Every day
- Estimated price
- ¥3,300–5,000
- Website
- ch.com
Flights from Shanghai Hongqiao International Airport to Dunhuang via Tianfu International
- Ave. Duration
- 6h 45m
- When
- Every day
- Estimated price
- ¥1,000–3,500
Flights from Shanghai Pudong International Airport to Dunhuang via Tianfu International
- Ave. Duration
- 9h 30m
- When
- Every day
- Estimated price
- ¥2,300–4,700
Flights from Hangzhou Xiaoshan International Airport to Dunhuang via Lanzhou
- Ave. Duration
- 5h 55m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- ¥2,500–5,500
Flights from Nantong Xingdong Airport to Dunhuang via Tianfu International
- Ave. Duration
- 9h
- When
- Every day
- Estimated price
- ¥4,100–6,000
Flights from Nanjing Lukou International Airport to Dunhuang via Tianfu International
- Ave. Duration
- 7h 55m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- ¥2,400–5,000
- Website
- chinaexpressair.com
Flights from Hangzhou Xiaoshan International Airport to Dunhuang via Xi An
- Ave. Duration
- 8h 25m
- When
- Every day
- Estimated price
- ¥3,200–7,000
Flights from Nanjing Lukou International Airport to Dunhuang via Lanzhou
- Ave. Duration
- 5h 20m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- ¥2,700–6,000
Flights from Nanjing Lukou International Airport to Dunhuang via Xi An
- Ave. Duration
- 7h 5m
- When
- Every day
- Estimated price
- ¥2,700–6,000
Train from Shanghai station to Jiayuguan
- Hard Seat
- ¥250–360
- Hard Sleeper
- ¥550–700
- Soft Sleeper
- ¥750–1,100
Train from Longxi to Dunhuang
- Hard Seat
- ¥130–190
- Hard Sleeper
- ¥270–310
- Soft Sleeper
- ¥390–550
Train from Jiayuguan to Dunhuang
- Hard Seat
- ¥45–60
- Hard sleeper
- ¥85–120
- Soft sleeper
- ¥140–190
Train from Shanghai station to Longxi
- Hard Seat
- ¥190–260
- Hard sleeper
- ¥340–470
- Soft sleeper
- ¥550–750
Train from Lanzhou to Jiuquan
- Ave. Duration
- 8h 8m
- Frequency
- Once daily
- Estimated price
- ¥80–221
- Schedules at
- chinahighlights.com
- Hard/Soft Seat
- ¥80–120
- Hard Sleeper
- ¥170–210
- Soft Sleeper
- ¥270–340
Train from Shanghai Hongqiao to Hangzhou East
- Ave. Duration
- 59 min
- Frequency
- Every 15 minutes
- Estimated price
- ¥70–80
- Schedules at
- 12306.cn
- Book at
- 12306.cn
- 2nd Class Seat
- ¥70–80
- 1st Class Seat
- ¥115–130
- Business Class Seat
- ¥160–240
Train from Shanghai station to Nanjing South Station
- 2nd Class Seat
- ¥130–150
- 1st Class Seat
- ¥210–240
- Business Class Seat
- ¥310–440
Train from Shanghai Hongqiao to Hangzhou East
- Ave. Duration
- 1h 7m
- Frequency
- Every 4 hours
- Estimated price
- ¥70–130
- Schedules at
- chinahighlights.com
- Adult - 2nd Class
- ¥70–100
- Adult - 1st Class
- ¥90–130
Train from Shanghai station to Nanjing South Station
- Ave. Duration
- 1h 56m
- Frequency
- Twice daily
- Estimated price
- ¥100–220
- Schedules at
- chinahighlights.com
- Adult - 2nd Class
- ¥100–150
- Adult - 1st Class
- ¥160–220
- Website
- qichezhan.net
Bus from Shanghai to Yinchuan Nanmen Station
- Ave. Duration
- 30h
- Frequency
- Once daily
- Estimated price
- ¥578
- Schedules at
- qichezhan.net
- Phone
- 400-830-6666
- Website
- ctrip.com
Bus from Yinchuan Nanmen Station to Lanzhou
- Ave. Duration
- 5h 30m
- Frequency
- Hourly
- Estimated price
- ¥140
- Schedules at
- bus.ctrip.com
- [email protected]
- Website
- chinabusguide.com
Bus from Jiuquan to Dunhuang
- Ave. Duration
- 4h 40m
- Frequency
- Every 3 hours
- Estimated price
- ¥80–170
- Schedules at
- chinabusguide.com
- Bus
- ¥120–170
Bus from Shanghai Zongzhan to Jiangsu Tongzhou
- Ave. Duration
- 1h 40m
- Frequency
- Hourly
- Estimated price
- ¥56–100
- Schedules at
- chinabusguide.com
- Bus
- ¥70–100
Want to know more about travelling around the world?
Rome2Rio's Travel Guide series provide vital information for the global traveller. Read our range of informative guides on popular transport routes and companies - including Want to know more about Flixbus?, Best ways to travel around Australia, and 5 delightfully under-the-radar French towns you need to visit - to help you get the most out of your next trip.
Booking & Getting There
There are 19+ hotels available in Dunhuang.




















