Getting to Cusco
International travelers coming to Cusco are likely to pass through capital city and main travel hub Lima before connecting for a one-hour flight to Cusco's airport, the Aeropuerto Internacional Velasco Astete. The airport is located about 5 kilometers from the city center; to get into town you can either take a taxi or arrange a hotel car with your hotel or hostel. There are also small buses that go between the airport and the Plaza San Francisco, but this is really only a viable option if you're a) staying right in or near the Plaza San Francisco and b) you're traveling extremely light.
Cusco doesn't have a main bus station, though the city does offer numerous bus connections with other cities and towns throughout both the region and the rest of the country: Lima (a 26-hour haul), Arequipa, Puerto Maldonado, Punol, Juliaca and more. Most buses leave from and arrive to the Terminal Terrestre (address: Vallejos Santoni), located outside of the city center on the way to the airport.
There are two train stations in Cusco, both operated by the national rail company PeruRail. If you're traveling to/from Puno and Arequipa you'll use the Estación de Huanchaq (address: Av. Pachacútec), while if you're traveling to/from Ollantaytambo, Machu Picchu and Amazon jungle locations then you will use the Estación de San Pedro (address: Calle Cascaparo).