You can travel from Arequipa to Puno in a diferent transports like: tour bus or airplain or even local bus, other option is travel from Chivay visiting the Colca canyon.
Ways to travel from Arequipa to Puno
To travel from Arequipa to Puno there are buses leaving by 8:30 and 14:00 local buses leave even more often bu just few of them are realiable, we will not recommend you to take the local buses cause they may stop in route to pick up more people so you and your belongs will be in risk.
Some reliable companies are: cruz del sur, transzela, huayruro, tour peru; you must book these tickets with an travel agency cause in high season for tourism there wont be places and they may be very expensive. The most reliable company is cruz del sur bus but is more expensive than the others.
The bus ride will be very long around 7 hours, and you must buy snacks and water before depart.
When you will arrive you will see some informal companies offering really cheap excursions and offering taxi rides, like in other bus stations in all over Peru, but if you will arrange this kind of servise, you may not be safe neither your belongs.
You will see taxi drivers outside of the bus station but if you dont speak spanish will be very dificult. Some hotels offer complementary transport from the bus station and early check inn out of charge, but you have to ask before.
Most of the hotels are in the downtown of the city and there are other like: Casa Andina Private collection, Posada del Inca, Eco inn, Jose Antonio are out side but not so far.
There are others like: Casa Andina, Sonesta Posada del Inca, Libertador, Ecco Inn, Jose Antonio, Taypicala lago, Titilaka lodge (1 hour far). All of these hotels are located outside of Puno city so you must arrange the transfer from bus station to this hotels in advance either with a travel agency or the hotel. If you stay in those hotels you will need to arrange transport to start the tours as well, sometimes travel agencies includes this as a complementary service acording to the size of your party but you have to ask in advance.
Bus Chivay Puno
There is a bus going from Chivay it calls 4m, depart at 12:30 from “La Pascana” but its gonna be really expensive. Is better to arrange as part of a package starting from Arequipa ending in Puno, in this way you will save time and of course money.
Takes like 6 hours to arrive in Puno and they will drop you off as close as posible to your hotel, if it is in the downtown; if not they will drop you off at the main square where you can find a lot of taxis.
From Arequipa to Puno by airplane
There are few companies in Peru traveling between and is very expensive actually, I’ll recommend you travel by bus with a reliable company. Anyway to travel to Puno there are just two, one is LATAM airlines and the other is AVIANCA airlines.
LATAM airlines has some frecuencies and rates, the rates are: Base, Access, Control y Flex. The first two are peruvians or people who are resident in Peru; the last two are very expensive and if you book in advance you may get a better price.
AVIANCA airlines has less frecuencies and is a bit cheaper that the other.
but in both cases you will not arrive to Puno, because there is no airport, the airport is located in Juliaca about one hour by car and you must arrange in advance the transport to your hotel in Puno with a travel agency or your elected hotel.