Rome2Rio

How to get fromShanghai to Shangri-Laby plane, train, car, or bus

Find Transport to Shangri-La

See all options

There are 7 ways to get from Shanghai to Shangri-La by plane, train, car, or bus

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.

  1. Fly Shanghai Hongqiao International Airport to Diqing Shangri-La Airport

    best
    1. Fly from Shanghai Hongqiao International Airport (SHA) to Diqing Shangri-La Airport (DIG)plane plane SHA - DIG
    7h 13m
    ¥2,033–4,039
  2. Train

    cheapest
    1. Take the train from Shanghai South to Kunmingtrain train
    2. Take the train from Kunming to Lijiangtrain train
    3. Take the train from Lijiang to Shangri-Latrain train
    44h 49m
    ¥430–870
  3. Train via Chengdu

    1. Take the train from Shanghai station to Chengdu Easttrain train
    2. Take the train from Chengdu East to Chuxiongtrain train
    3. Take the train from Chuxiong to Lijiangtrain train
    4. Take the train from Lijiang to Shangri-Latrain train
    27h 1m
    ¥1,254–2,155
  4. Drive  2,712.8 km

    1. Drive from Shanghai to Shangri-Lacar car 2,712.8 km
    30h 52m
    ¥2,288–3,304
  5. Fly Shanghai Pudong International Airport to Diqing Shangri-La Airport

    1. Fly from Shanghai Pudong International Airport (PVG) to Diqing Shangri-La Airport (DIG)plane plane PVG - DIG
    7h 35m
    ¥2,183–3,489
  6. Fly Shanghai Hongqiao International Airport to Lijiang Sanyi Airport, train

    1. Fly from Shanghai Hongqiao International Airport (SHA) to Lijiang Sanyi Airport (LJG)plane plane SHA - LJG
    2. Take the train from Lijiang to Shangri-Latrain train
    8h 28m
    ¥1,696–3,422
  7. Bus, train

    1. Take the bus from Shanghai General to Nantongbus bus
    2. Take the train from Nantong to Kunmingtrain train
    3. Take the train from Kunming to Lijiangtrain train
    4. Take the train from Lijiang to Shangri-Latrain train
    2d 2h
    ¥510–1,011

Shanghai to Shangri-La by train

Calendar7Weekly Trains
Duration27h 1mAverage Duration
Ticket¥1,254Cheapest Price
See schedules

Comparing Your Travel Options

What companies run services between Shanghai, China and Shangri-La, China?

China Eastern Airlines and Sichuan Airlines fly from Shanghai Hongqiao International Airport (SHA) to Diqing Shangri-La Airport (DIG) every 4 hours. Alternatively, you can take a train from Shanghai station to Shangri-La via Chengdu East, Chuxiong, and Lijiang in around 27h 1m.

Airlines
Train operators
Bus operators

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 4 of the smartest ways to explore Australia, How to plan an amazing trip around Scandinavia, and Want to know more about Flixbus? - to help you get the most out of your next trip.

Booking & Getting There