Quick Navigation
I've been guiding tours in China for over a decade. The number one stress point? Train tickets to Dunhuang. Foreigners get stuck at the booking stage — their international credit cards fail, the 12306 app looks like an alien interface, and by the time they figure it out, all the soft sleepers are gone. Here's the truth: you can book trains to Dunhuang without a Chinese phone number or WeChat Pay if you know the loopholes. Let me walk you through exactly how, from someone who's done it dozens of times.
Why Booking Is Tricky for Foreigners
China's train booking system, 12306, wasn't designed with international users in mind. The English version on the website is clunky, and the mobile app (in Chinese only) requires a Chinese phone number for registration. Most foreign credit cards are rejected for payment. You might think you can just show up at the station — but no. High-speed trains to Dunhuang often sell out weeks in advance, especially during Chinese holidays and summer (May–October).
Choose Your Route: Which Train to Dunhuang?
Dunhuang sits in far western Gansu province. Most travelers start from Lanzhou (the provincial capital), Xi'an, or Xining. Here's the breakdown of popular routes:
| Route | Train Type | Duration | Approx. Price (Hard Sleeper / 2nd Class Seat) |
|---|---|---|---|
| Lanzhou → Dunhuang | High-speed (G/D trains) | 4–5 hours | ¥150–400 |
| Lanzhou → Dunhuang | Overnight (K/T trains) | 10–14 hours | ¥200–350 (sleeper) |
| Xi'an → Dunhuang | Direct overnight (K/T) | ~14 hours | ¥250–400 (sleeper) |
| Xining → Dunhuang | Direct overnight (K/T) | ~8 hours | ¥180–300 (sleeper) |
Pro tip: If you're short on time, grab the high-speed G3183 from Lanzhou West Station at 8:17 AM — arrives Dunhuang by 12:49 PM. You'll have the afternoon to visit the Mogao Caves. But book it at least 2–3 weeks ahead in summer.
Booking Channels: 12306 vs Trip.com vs Local Agents
You've got three real options. Let me rank them:
- 12306 English website (www.12306.cn/en) — cheapest, no markup, but requires patience. Only works with certain foreign visas (accepts passport numbers for most nationalities). Payment by Visa/Mastercard often fails; use Alipay or WeChat Pay if you have them. If not, ask your hotel to pay for you and reimburse them.
- Trip.com (formerly Ctrip) — easier interface, accepts foreign credit cards (Visa, Mastercard, Amex), charges a small service fee (around ¥20–50 per ticket). You can book in English and pick up tickets at the station with your passport. I recommend this for first-timers.
- Local travel agents or hotel concierge — reliable if you're already in China. Your hotel front desk can often book tickets for you (sometimes with a small fee). That's my go-to when I'm lazy.

Step-by-Step: Booking on 12306 (English Version)
1. Register an Account
Go to www.12306.cn/en, click “Register”. You'll need your passport number, full name exactly as on passport, and a valid email. No Chinese phone is needed for the English site (though they ask; skip or use a dummy number like 13800138000 — it works). Verify via email.
2. Search for Trains
Select “Train Ticket”, enter your departure city (e.g., Lanzhou) and destination (Dunhuang). Choose date. Hit search. You'll see all trains — note that “G” and “D” are high-speed, “K”, “T”, “Z” are slower but cheaper.
3. Choose Seat Class
For overnight, I always pick “Hard Sleeper” (硬卧) — three tiers, but the middle bunk is decent. “Soft Sleeper” (软卧) is more expensive but quieter, with four bunks per cabin. For daytime, “Second Class Seat” (二等座) is fine.
4. Add Passengers & Pay
Add yourself as a passenger using your passport. Then proceed to payment. If your foreign card is declined, switch to Alipay (if you have it) or use the “Pay at Counter” option — though I've never tested if that works for foreigners. Real talk: Trip.com is less headache.
Where to Pick Up Tickets & Boarding Tips
After booking online, you must collect paper tickets at any railway station's ticket office or self-service machine (some machines accept passports). Bring your passport and the booking confirmation (printed or digital). At Dunhuang Station, the ticket machines are near the entrance — touch the “International Passport” icon. If stuck, go to counter window 15–20 — they handle foreign passports.
Boarding: Dunhuang Station is about 12 km from the city center. Taxi costs around ¥30–40 (15 minutes). You'll pass through security check with ticket and passport. Arrive at least 30 minutes early.
4 Common Mistakes Foreigners Make
- Thinking you can buy tickets at the station on the day. During peak season (May–Oct), especially around Chinese National Day (Oct 1–7), tickets sell out 15 days in advance (the booking window). Book as soon as your travel dates are firm.
- Using the wrong name format. On 12306, your name must match your passport exactly (including middle names). If you miss a letter, the machine won't print your ticket. I've seen travelers cry at the counter.
- Assuming all trains are high-speed. Many foreigners expect bullet trains for every route. The Lanzhou-Dunhuang overnight K train is a classic but takes 10+ hours. Check the duration before you book.
- Forgetting about the Lanzhou West vs Lanzhou Station confusion. High-speed trains depart from Lanzhou West; slower trains from Lanzhou Station. They are 30 minutes apart by taxi. Don't go to the wrong one.

Jian Zhao
Followed the steps and eventually got my ticket, but it wasn't as smooth as described. The app interface had changed since the article was written, so the buttons looked different. Also, no mention that summer tickets sell out a week in advance - I barely got a hard seat. The general process is correct, but I felt frustrated hunting for the right menu. Okay for a starting point, but expect to troubleshoot.
Very helpful overall, but it could use a 2024 update. The payment section mentions Alipay and WeChat - I had trouble linking my foreign card to WeChat and found that Alipay with a TravelPass worked better. Also, the screenshots show an older version of the app. Still, without this I would have been totally lost. A few small tweaks would make it perfect.
Best money I never spent - this free guide saved me a ton of agent fees. The author explains exactly how to get a foreign passport verified on 12306, then how to search for trains from Lanzhou to Dunhuang. I followed every step and had my e-ticket in 20 minutes. The screenshot with the exact buttons to click is a lifesaver. If you're on a budget and want to do it yourself, use this.
As a rail enthusiast traveling through China, I found this article incredibly detailed. It breaks down the different train types (K, Z, G classes) and even explains which stations in Lanzhou connect best to Dunhuang. The tip about picking the right berth level for comfort was spot-on. Only wish it included more info on how to collect paper tickets at the station, but the mobile e-ticket method worked fine. Solid guide!
I was so nervous about booking train tickets in China as a foreigner, but this guide made it ridiculously easy. Step-by-step screenshots and clear explanations for each part of the 12306 app - even the payment part. Got my sleeper tickets to Dunhuang without any hiccups. The journey was amazing, and I owe it all to this article. Highly recommend if you're planning the trip!