Geoghegan Hart is now fourth in the general classification standings after he stuck with Team Sunweb duo Wilco Kelderman and Jai Hindley inside the final 10 kilometres of the 185km stage 15 on Sunday.
The 25-year-old then put on the afterburners in the last kilometre, out-sprinting his rivals to clinch Team INEOS Grenadiers’ fifth stage victory of this year’s Giro, which is still led by Joao Almeida.
Giro d’Italia 2020: Narvaez wins stage 12 in treacherous conditions
INEOS’ former team director Nicolas Portal died in March this year and Geoghegan Hart dedicated the triumph to him.
“This one was for Nico Portal, we lost him this spring and I think it’s been really difficult for the team,” he said.
“This is something incredible for me. I don’t know about [the GC], I haven’t seen the results, but crossing the line first is something truly incredible.
“We’ve had some great highs this season but also some big lows in the Tour, for me personally and in this race.”
Deceuninck – Quick-Step’s Almeida finished fourth and still holds the overall lead, with a 15-second advantage over Kelderman.
Hindley is just under three minutes back, a second ahead of Geoghegan Hart.
Two-time Giro winner Vincenzo Nibali lost over two minutes on the final climb, with the Italian down at seventh in the GC, while Giovanni Visconti took the maglia azzurra off Ruben Guerreiro.
1. Tao Geoghegan Hart (INEOS) 04:58:52 2. Wilco Kelderman (Team Sunweb) +00:02 3. Jai Hindley (Team Sunweb) + 00:04 4. Joao Almeida (Deceuninck – Quick-Step) +00:37 5. Rafal Majka (Bora-Hansgrohe) +01:22
General Classification 1. Joao Almeida (Deceuninck-Quick-Step) 59:27:38 2. Wilco Kelderman (Team Sunweb) +00:15 3. Jai Hindley (Team Sunweb) +02:56
Points Classification 1. Arnaud Demare (Groupama-FDJ) 221 2. Peter Sagan (Bora-Hansgrohe) 184 3. Joao Almeida (Deceuninck-Quick-Step) 90
King of the Mountains 1. Giovanni Visconti (Vini Zabu-Brado-KTM) 118 2. Ruben Guerreiro (EF Pro Cycling) 87 3. Filippo Ganna (Team INEOS) 48
A final rest day is coming up on Monday, with another climbing route from Udine to San Daniele del Fruili making up stage 16 on Tuesday.
Get breaking news alerts.
You have already subscribed