There are 6 ways to get from Cusco to Puno by bus, train, car, plane, or shuttle
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Bus
best- Take the bus from Cusco Bus Station to Punobus Puno / ...
4h 27m$35–950Shuttle
cheapest- Take a shuttle bus from Cusco to PunoPrivate
4h 30m$34Train
- Take the train from Cusco - Wanchaq to Punotrain Cusco
10h 30m$330–6,000Drive 390 km
- Drive from Cusco to Punocar 390 km
6h 26m$59–85Fly to Inca Manco Cápac International Airport
- Fly from Alejandro Velasco Astete International Airport (CUZ) to Inca Manco Cápac International Airport (JUL)plane CUZ - JUL
5h 12m$173–379Fly to Rodríguez Ballón International Airport, bus
- Fly from Alejandro Velasco Astete International Airport (CUZ) to Rodríguez Ballón International Airport (AQP)plane CUZ - AQP
- Take the bus from Arequipa to Punobus
7h 33m$54–201
Cusco to Puno by bus
Questions & Answers
The cheapest way to get from Cusco to Puno is to shuttle which costs $34 and takes 4h 30m.
The fastest way to get from Cusco to Puno is to bus which takes 4h 27m and costs $35 - $950.
Yes, there is a direct bus departing from Cusco Bus Station station and arriving at Puno. Services depart three times a day, and operate every day. The journey takes approximately 4h 27m.
Yes, there is a direct train departing from Cusco - Wanchaq and arriving at Puno. Services depart four times a week, and operate Tuesday, Wednesday and Friday. The journey takes approximately 10h 30m.
The distance between Cusco and Puno is 389 km. The road distance is 390 km.
The best way to get from Cusco to Puno without a car is to bus which takes 4h 27m and costs $35 - $950.
The bus from Cusco Bus Station to Puno takes 4h 27m including transfers and departs three times a day.
Cusco to Puno bus services, operated by Turismo Zolorzano, depart from Cusco Bus Station.
Cusco to Puno train services, operated by PeruRail, depart from Cusco - Wanchaq station.
The best way to get from Cusco to Puno is to bus which takes 4h 27m and costs $35 - $950. Alternatively, you can train, which costs $330 - $6,000 and takes 10h 30m, you could also fly, which costs $170 - $380 and takes 5h 12m.
What companies run services between Cusco, Peru and Puno, Peru?
Turismo Zolorzano operates a bus from Cusco Bus Station to Puno hourly. Tickets cost $24–29 and the journey takes 4h 27m. Five other operators also service this route. Alternatively, PeruRail operates a train from Cusco - Wanchaq to Puno 4 times a week. Tickets cost $330–6,000 and the journey takes 10h 30m.
- Website
- latam.com
Flights from Alejandro Velasco Astete International Airport to Inca Manco Cápac International Airport via Lima
- Ave. Duration
- 4h 53m
- When
- Every day
- Estimated price
- $130–330
Flights from Alejandro Velasco Astete International Airport to Inca Manco Cápac International Airport via Rodríguez Ballón International Airport, Lima
- Ave. Duration
- 6h 45m
- When
- Every day
- Estimated price
- $130–330
Flights from Alejandro Velasco Astete International Airport to Rodríguez Ballón International Airport
- Ave. Duration
- 1h 6m
- When
- Every day
- Estimated price
- $55–190
- Phone
- +51 1625 4848
- [email protected]
- Website
- PeruRail
Train from Cusco - Wanchaq to Puno
- Ave. Duration
- 10h 30m
- Frequency
- 4 times a week
- Estimated price
- $330–6,000
- Website
- PeruRail
- Phone
- +51 989 990 918
- [email protected]
- Website
- facebook.com
Bus from Cusco Bus Station to Puno
- Ave. Duration
- 4h 27m
- Frequency
- Hourly
- Estimated price
- $24–29
- Schedules at
- facebook.com
- Book at
- zolorzano.com.pe
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 How do I get from Sydney to Melbourne, Travelling to and around Russia for the 2018 FIFA World Cup, and Is ride-sharing platform BlaBlaCar right for you? - to help you get the most out of your next trip.
More Questions & Answers
Cusco to Puno bus services, operated by Turismo Zolorzano, arrive at Puno station.
Cusco to Puno train services, operated by PeruRail, arrive at Puno station.
Yes, the driving distance between Cusco to Puno is 390 km. It takes approximately 6h 26m to drive from Cusco to Puno.
Book your Cusco to Puno train tickets online with 12go.asia.
Book your Cusco to Puno bus tickets online with 12go.asia.
There are 301+ hotels available in Puno.






