Most transport to Dali arrives at the nearby city of Xiaguan, which is often referred to as Dali City. From Xiaguan local buses run to the ancient city of Dali and other towns around ErHai lake and beyond.
Buses from the provincial capital of Kunming leave from the West bus station every 20 minutes and take between 4-5 hours to reach Xiaguan.
Local bus no 8 and no 4 run to Dali old town for the price of 2rmb, but are not easy to find from Xiaguan’s long distance bus stations, so it is recommended to a take a taxi to the old town.
Thanks to a new road bus journey times from Lijiang have been cut in half and now just take around 2 hours. They stop outside the north-east part of the old town from where you can get a taxi to your accommodation.
A sleeper bus service runs to Xiaguan from Jinghong in southern Yunnan and takes around 17 hours, and is a good option for visitors coming overland from Laos.
A number of overnight trains run from Kunming, taking 6-8 hours to arrive in Xiaguan. The ticket options available include hard seat, hard sleeper, and soft sleeper.
Bus no 8 starts from the train station in Xiaguan leaving every 10 minutes during the day, taking 30 minutes to reach the old town for a 2rmb fare. The bus stops at the southern point of Yu Er Lu, or you can continue to the final stop close to the main Dali hospital.
Four trains operate daily from Lijiang taking around 2 hours to Xiaguan.
A high speed rail line is planned which will cut the time in half but development on the project has currently stalled.
Dali airport is located 13km to the east of Xiaguan. Flights only operate domestically, to top-tier cities nationwide. These include Beijing, Shanghai, Guangzhou, Shenzhen, Chongqing, Chengdu, Guiyang, Jinghong, and Kunming.
No public buses run from the airport but an army of taxis await to take you to your accomodation.
Most visitors to Dali usually fly into Kunming and travel onwards to Dali.
Taxi drivers are unlikely to use the meter so fares should be agreed beforehand. Expect to pay 50rmb from the train or bus station in Xiaguan to Dali ancient town. Fares from Dali airport are usually around 100rmb. Taxis are also available direct from the airport in Kunming for 800rmb. A taxi from the old town to Cai Cun, the nearest village on the lake, costs around 25rmb. For short journeys around the old town expect to pay 10-20rmb.