There are four main ways you can get from Cusco to Puno and Lake Titicaca.
The closest airport to Puno is the Inca Manco Cápac airport in the city of Juliaca which is 44km and approximately 1 hour by road from Puno. There are direct flights to Juliaca from both Lima and Cusco. There are currently no direct international flights to Puno. Most travellers usually incorporate a visit to Puno as part of their Peru travel itinerary between visits to/from Cusco and Arequipa or at the end of their trip before flying back to Lima to head home.
Currently airlines Avianca and LATAM operate direct flights from Lima and Cusco to Puno. International carriers like KLM, American Airlines, LATAM and others have code share agreements so you can book and fly from your home city to Puno on the same ticket.
Flight time Lima – Juliaca: 1h 40minutes.
Flight time Cusco – Juliaca: 1 hour.
Peru Rail operates the elegant Pullman style Andean Explorer train that runs between Cusco and Puno four days a week. This ten hour luxury train journey is a fabulous way to traverse the Andean highlands in style.
10h 30 minutes
From US$176 one way and includes a gourmet lunch, afternoon tea and entertainment.
Cusco – Puno and Puno – Cusco
This train operates on Monday, Wednesday, Friday and Saturdays only.
Most travellers travel to Puno by bus and with good reason as the roads are good and the views spectacular! There are several good quality bus companies that operate the 7.5 hour bus ride to and from Cusco and the 6.5 hour trip to and fromArequipa.
We recommend you pay a bit extra and travel with one of the better bus companies that are generally a) safer with better quality drivers and more security and b) more comfortable. Our favourite buses to travel to Puno with are:
One of the most highly regarded bus companies in Peru. They offer economy and first class service on their comfortable double-decker buses from Cusco and Arequipa to and from Puno.
A new company with brand new double-decker buses, good drivers and an economy and first class service.
Both of these companies also offer a day long bus route from Cusco to and from Puno where you stop off and visit some of the scenic sights along the way including La Raya, the highest point on the journey at 4335 metres, the Wiracocha temple at Raqchi and the town of Pukara famous for their ceramic bulls.
Approximate fare prices:
Cusco to/from Puno from US$17.
Day long tourist bus Cusco to/from Puno from US$45.
Arequipa to/from Puno from US$20.
If you’re feeling adventurous you can opt to hire a car and drive the seven hours from Cusco to Puno or the 5 hours from Arequipa to Puno. The drive from Lima takes about 22 hours and unless you have a) buckets of time and b) want to brave the winding roads and ravines of the Andes we don’t recommend.
It’s also probably worth mentioning that driving standards are much lower in Peru than in The U.S or Europe so be prepared to see some crazy overtaking on bends, speeding etc.! The main car hire companies in Peru are Hertz, Avis and Budget Car Hire.