Desde Perú se puede llegar a Bolivia por tierra a través de dos rutas: vía Yunguyo y vía Desaguadero. Por Yunguyo es bastante más atractivo el viaje, pero por Desaguadero es más rápido, menos complicado y bastante más barato. Se puede permanecer en Bolivia hasta 90 días sin problema, pero para cerciorarse es mejor consultar en el Consulado Boliviano en Puno.
Estaciones de Ferrocarriles en Puno La Estación de Tren de Puno (tel: 051-36-9179) está ubicada en la avenida La Torre. Hay trenes que salen hacia Cuzco, aunque la mayoría decide ir en autobús, por comodidad y rapidez. Para consultar horarios y precios entrar en www. perurail.com
Estaciones de Autobús en Puno La Terminal Terrestre se encuentra a 2 Km. al sureste del centro de la ciudad. Hay trayectos regulares a Lima (con una duración entre 21 y 25 horas), a Cuzco (6 horas) y a Arequipa (5 horas). Las carreteras hacia Lima y Arequipa no está bien pavimentadas.
Los autobuses a Arequipa y a Cuzco van vía Juliaca. Y hay minibuses que también van hasta ahí desde la Terminal Zonal, una nueva estación situada unos edificios antes de la Terrestre.
First Class (tel: 051-36-3631) ofrece unos cómodos autobuses que van a Cuzco cada mañana. Además, estos autobuses disponen de guías que explican los sitios por los que pasa la ruta (Pucara, La Raya, Sicuani, Raqchi, Andahuayillas y Piquillaqta).
También hay autobuses que van hasta la frontera boliviana.