Nairo Quintana tightened his grip on the Giro d'Italia by claiming the mountain time trial stage 19 from Bassano de Grappa to Cima Grappa.
He extended his lead over fellow Colombian Rigoberto Uran to over three minutes with two stages remaining.
Movistar rider Quintana was 17 seconds faster than Italian Fabio Aru over the 26.8km route.
Aru's excellent ride saw him leapfrog Pierre Rolland of France to move into third place behind Uran.
It was Quintana's second stage win of the Giro, following his victory in stage 16 that put the 24-year-old into the race lead.
Italian rider Aru gave hope of a home victory for the local fans, but Quintana was relentless over the steep closing stages.
"I had a great feeling and I took full advantage of it, I was really well prepared," said Quintana, who changed both his bike, as the gradient increased, and his helmet during the time trial.
"Tomorrow, I have a strong team to control the stage. I'll try to attack when we get towards the top. Why not?
With the penultimate day of the Giro another testing mountain stage, a 167km route from Maniago to Monte Zoncolan, Quintana is well placed to be in the pink jersey when the race finishes in Trieste on Sunday.
Stage 19 result:
1. Nairo Quintana (Colombia/Movistar) 1:05:37"
2. Fabio Aru (Italy/Astana) +17"
3. Rigoberto Uran (Colombia/Omega Pharma-Quick-Step) +1:26"
4. Pierre Rolland (France/Europcar) +1:57"
5. Domenico Pozzovivo (Italy/AG2R) +2:24"
6. Franco Pellizotti (Italy/Androni Giocattoli) +3:22"
7. Rafal Majka (Poland/Tinkoff-Saxo) +3:28"
8. Sebastian Henao (Colombia/Team Sky) +3:48"
9. Tim Wellens (Belgium/Lotto) +4:00"
10. Dario Cataldo (Italy/Team Sky) +4:10"
1. Nairo Quintana (Colombia/Movistar) 79:03:45"
2. Rigoberto Uran (Colombia/Omega Pharma-Quick-Step) +3:07"
3. Fabio Aru (Italy/Astana) +3:48"
4. Pierre Rolland (France/Europcar) +5:26"
5. Domenico Pozzovivo (Italy/AG2R) +6:16"
6. Rafal Majka (Poland/Tinkoff-Saxo) +6:59"
7. Cadel Evans (Australia/BMC Racing) +9:25"
8. Wilco Kelderman (Netherlands/Belkin) +9:29"
9. Ryder Hesjedal (Canada/Garmin) +10:11"
10. Robert Kiserlovski (Croatia/Trek) +13:59"