By plane to Guilin
Nonstop flights run from both Beijing airports, Capital (PEK) and Daxing (PKX), to Guilin Liangjiang (KWL), in about 2 hours 50 minutes to 3 hours 20 minutes. Air China, China Southern, Hebei Airlines and Capital Airlines are among the airlines on the route. One-way fares listed for 2026 range from about US$93 to US$183, depending on the date and how early you book.
From Guilin airport, direct coaches go to Yangshuo in about 1 hour 30 minutes, for around ¥50 to ¥70 depending on the drop-off point. It is the fastest way overall: you can leave Beijing in the morning and be in Yangshuo in the afternoon.
By high-speed train
Two direct G trains a day link Beijing West to Guilin North or Guilin station, in about 7 hours 58 minutes, for around ¥949 to ¥952 in second class. No train from Beijing goes directly to Yangshuo station: you change in Guilin, then take a train, a bus or a cruise for the last leg. For those options, see our guide on how to get from Guilin to Yangshuo.
The train takes more than twice as long as the plane, for a fare in the same range as the flights, but it goes from city centre to city centre, without check-in.
By overnight train
An overnight D train runs from Beijing West to Guilin North in about 11 hours 33 minutes. A second-class seat costs around ¥648.50 and a sleeper berth around ¥730. With a berth, you save a night in a hotel; check the departure and arrival times when you book.
Practical information
- Plane: Beijing (PEK or PKX) to Guilin (KWL), about 3 hours, from about US$93 one way; then about 1 hour 30 minutes by coach to Yangshuo (¥50 to ¥70).
- High-speed train: Beijing West to Guilin North or Guilin, about 8 hours, around ¥950 in second class.
- Overnight train: Beijing West to Guilin North, about 11 hours 30 minutes, around ¥650 (seat) or ¥730 (sleeper berth).
- Last leg: Guilin to Yangshuo by bus, train or Li River cruise.




