Chris Froome moved a significant step closer to Tour de France glory as he retained his overall lead on arguably the most difficult stage of this year's mountainous route.

While Rui Costa raced clear to win his second stage this week in the rain in Le Grand-Bornand, Froome held off late attacks from his rivals Alberto Contador and Nairo Quintana to remain five minutes and 11 seconds clear of Contador.

Froome must now face one more mountain challenge, tomorrow's 125km stage to Annecy-Semnoz, before he can plan a victory parade in Paris on Sunday night.

But to have come through today's stage - described by several riders as the most difficult of a Tour which has already featured Mont Ventoux and a double ascent of the Alpe d'Huez - and to do so in wet conditions towards the end, will be a huge relief for Froome.

He finished more than eight and a half minutes after Costa, who had caught Frenchman Pierre Rolland on the last of the five categorised climbs, and led over the top of the Col de la Croix by a minute in heavy rain.

The Movistar rider then held his nerve down the slippery descent to finish 49 seconds clear of Andreas Kloden.

Costa was also a winner earlier this week on stage 16 to Gap.

The day was notable for the lack of significant moves from Froome's rivals with time running out for them to take chunks out of his advantage going into the final weekend of the Tour.

Although Contador and Quintana both tried to follow Joaquim Rodriguez off the front of the peloton on that final climb, a move quickly covered by Froome, they had otherwise looked unable to trouble the yellow jersey on a route which included two hors categorie climbs and two category ones.

It meant a day of little drama for Froome, who yesterday had a sugar crash on the second ascent of the Alpe d'Huez, and was then hit with a 20-second time penalty for an illegal feed inside the final six kilometres when he took an energy bar from Richie Porte to address it.

Ireland's Nicolas Roche finished 70th on the stage, 23:50 behind Costa. His compatriot - and cousin - Dan Martin finished in 129th position, 29:41 behind the winner.

Martin lies 32nd in the general classification at 55:23 behind Froome. Roche is placed 43rd overall, 1:29:00 off the lead.

As the riders rolled out of Bourg-D'Oisans this morning, at the foot of the Alpe, Froome was reminded of the incident as fans shouted 'Don't forget your lunch, Chris' when the yellow jersey rolled by.

Ryder Hesjedal, the 2012 Giro d'Italia winner, had been among the riders adamant today would be the toughest day of the Tour, having branded the stage 'The Redonkathon' according to team-mate David Millar, but the Canadian nevertheless saw it a day worthy of an audacious early attack.

He led the way over the opening climb, the Col du Glandon, with Jon Izaguirre just behind, and the Garmin-Sharp rider then dropped the Spaniard on the second of the hors categorie climbs, the Col de la Madeleine, towering 2,000m in the sky.

But just as soon as he moved clear, Frenchman Pierre Rolland joined him and moved ahead, eager to get back into contention for the King of the Mountains jersey he wore earlier in the Tour.

The tight, twisty descents would claim victims, with another Garmin-Sharp man Jack Bauer the first of the day to abandon.

The next two withdrawals could have a significant impact come the Champs-Elysees in Paris on Sunday.

Tom Veelers and Marcel Sieberg both abandoned, key lead-out men for Mark Cavendish's sprint rivals Marcel Kittel and Andre Greipel respectively.

Froome took things more steadily down these narrow roads, but although he allowed Contador to move to the front of the peloton ahead of him, there was no attack from the Spaniard, Froome shadowing him around the 26 hairpin bends to the foot of the mountain.

Rolland continued to fight alone at the front, racking up further KOM points over the next two climbs, but he was caught on the last ramp of the day as the weather began to turn.

Costa made his move, quickly pulling away and riding through heavy rain to cross the summit about a minute ahead of his closest pursuers, leaving Rolland one point shy of Froome in the KOM standings, although he will wear the polka dots tomorrow with Froome still decked out in yellow.

Rui Alberto Costa rides through the rain in the closing kilometres of stage 19

Behind, Saxo-Tinkoff were still driving the peloton with Michael Rogers and Roman Kreuziger alongside Contador, but Froome and Richie Porte were just behind, no doubt wary of the tough descent to come in the slippery conditions.

Rodriguez launched an attack with 15km to go and Contador and Quintana were out of the saddle to follow, but Froome bridged the gap as Porte was temporarily dropped.

The yellow jersey of Chris Froome seen from a distance

But that proved to be that in terms of attempts from Froome's rivals to claw back a little time.

They rode down the valley and into Le Grand-Bornand together, leaving only one more major hurdle - the hors categorie climb to Annecy-Semnoz tomorrow - between Froome and Paris.