Damiano Caruso won the penultimate stage to strengthen his hold on second place ©Getty Images

Colombia’s Egan Bernal moved to the brink of victory at the Giro d’Italia after finishing second on stage 20, with Italy’s Damiano Caruso winning on the day to boost his prospects of maintaining second place in the general classification.

Bernal and Caruso headed into the 164-kilometre stage from Verbania to Valle Spluga with possible cause for concern, with Britain’s Simon Yates having gained time on two stages during the final week.

Two major mountain passes appeared to offer Yates an opportunity to make further inroads, but the British rider was unable to launch another telling attack.

Caruso would instead go on the offensive, with the 33-year-old Italian breaking clear ahead of the final climb with Romain Bardet of France.

The duo were able to pull clear of the general classification group, although Bernal’s Ineos Grenadiers team helped to limit the time gap.

Caruso pulled away from Bardet in the final two kilometres to earn a stage victory in 4 hours 27min 53sec.

"I thought about a thousand things in the last metres before the finish line, all my sacrifices, my training, and all the work done by my teammates," Caruso said.

"We rode in an exemplary way today, Pello Bilbao in particular did an incredible job and he played a fundamental role in this victory.

"Today I realised a dream, I think I am the happiest man in the world."

Egan Bernal finished second on the stage and looks poised to win the Giro d'Italia ©Getty Images
Egan Bernal finished second on the stage and looks poised to win the Giro d'Italia ©Getty Images

The Italian looks set to secure a maiden Grand Tour podium finish, but is likely to have to settle for second place behind Bernal.

Bernal finished second on the stage at 24 seconds down, with his Colombian teammate Daniel Martinez and Bardet ultimately ending a further 11 seconds back.

"Today we rode very well as a team, we controlled the race in the best possible way,” said Bernal, who looks set to win a second Grand Tour following his 2019 Tour de France victory.

"My teammates did a super job, a special thanks to Jonathan Castroviejo.

"I had good legs and I knew I had teammates around me but when Caruso attacked, with his advantage increasing, I admit I was worried.

"Now I am confident for tomorrow's last stage, I have a two-minute lead in the general classification and I will give everything in the time trial."

Bernal leads the race by 1:59 from Caruso, whose second place in the standings was strengthened when Yates finished 51 seconds down on the stage after being dropped on the final climb.

Yates, who rides for Team BikeExchange, lies 3:23 off the race lead and 1:24 behind Caruso.

Tomorrow’s final stage will see the riders tackle a 30km individual time trial from Senago to Milan.