Ollantaytambo is one of the most popular destinations to visit in the Sacred Valley, with great connections both to Cusco and onwards to Aguas Calientes and Machu Picchu. It is a beautiful village to stay in for a while, awash with Inca history in the form of ruins and archeological sites.
Transport for the approximately 680-mile (1,100 km) journey from Lima to Ollantaytambo often include plane because of the distance, as well as bus, colectivo (shared taxi), and private transfer. Transfer between transport hubs in Cusco by taxi.
See here for more on Peru's best Incan ruins aside from Machu Picchu.
By Plane and Private Transfer
Duration: 3.5-4 hours
By far the easiest option for the first part of this journey (Lima to Cusco) is to fly, with direct flying time 80-90 minutes (as opposed to the 22+ hours that the journey would take by road). Most of Peru's domestic airlines and several international carriers ply the Lima-Cusco route, which is Peru's most popular. LATAM offers the greatest choice of flights, while other airlines flying include Avianca, Sky Airline Perú and Peruvian.
Direct flights from Lima to Cusco's Alejandro Velasco Astete International Airport are about hourly between 5 am and 7 pm. Remember that many international flights arrive into Lima in the evening, and that there may not be time to transfer to a flight to Cusco on the day you arrive—here are some of the best places to spend the night in Lima.
The next stage of the journey is by road from Cusco. For this, a private transfer, arranged to include airport pickup, is quickest. A great deal of international travelers arrive into Cusco, so organizing a private transfer to Ollantaytambo and/or other Sacred Valley sights, for a day or even several days, is common and convenient. The route from Cusco via Urubamba and Chinchero is quickest and can be done in 1.5 hours. Via Pisac, the journey is closer to 2.5 hours.
You can also opt for public transport from Cusco, in the form of minibuses or colectivos, though this is a less convenient way to go—see this article for more info.
By Plane and Train
Duration: 3.5-4.5 hours
Take a plane from Lima to Cusco as per the previous option. In Cusco, by far the most stylish and atmospheric (as well as by far the priciest) way to get to Ollantaytambo is to take the train.
Inca Rail and Peru Rail each run three to four daily services to Aguas Calientes which stop at Ollantaytambo. All of these services call at or originate at Cusco's Poroy station, a 20-minute drive from central Cusco. Some of these services now actually begin at Cusco's historic San Pedro station, closer to central Cusco, which makes arrival at the station much easier, but the journey longer and closer to the upper duration given above. Still, the San Pedro-Poroy section of the train ride is spectacular, on a series of steep switchbacks above Cusco.
One catch: you can't buy a ticket for the Cusco to Ollantaytambo route on the train company websites, and it can also be difficult to buy a ticket at the train stations in Cusco that is just to Ollantaytambo (you may be charged the full fare through to Aguas Calientes). This is because trains here are running on the assumption most travelers will want to go straight to Machu Picchu.
By Private Transfer, Bus, or Colectivo
Duration: 20-24 hours (Gringo Route), 24-30 hours (Central Highlands Route)
Traveling overland, you realize just what an immense country Peru is—with the bad roads making it seem bigger still. Total travel time from Lima to Cusco by bus is 20-24 hours on the route via Pisco/Nazca (the most popular bus route from the capital to Cusco) and 24-30 hours through the Central Highlands.
The best-quality road is Highway 1s south to Nazca, then Highway 30 to Abancay and Highway 3S to Cusco. It is most common to break the Lima-Cusco trip in Pisco, Nazca, or both along the way. It is often referred to as the 'Gringo Route' because of its popularity with backpackers.
There is also the option to travel from Lima to Cusco via the Central Highlands (via Huancayo, Ayacucho, Andahuaylas, and Abancay). Coming this way, the first leg of the journey is to Huancayo (6-8 hours), the second leg is to Ayacucho (6-8 hours), and the third leg is to Andahuaylas (5 hours). This is where you normally change for the final leg from to Cusco (7-9 hours).
Once in Cusco, travel to Ollantaytambo as outlined here.
By Bus and Train
Duration: 22-33 hours
This option is as per the previous one for the bus journey from Lima to Cusco and as per option two for the journey by train from Cusco to Ollantaytambo.