Switzerland's Roger Federer fought his way through to the French Open semi-finals after a three-hour four-set battle with countryman Stanislas Wawrinka ©Getty Images

Roger Federer fought his way through to the French Open semi-finals after an engaging four set battle with Stanislas Wawrinka at Roland-Garros in Paris. 

In a match interrupted by thunderstorms, Federer kept his nerve to overcome his fellow Swiss player 7-6, 4-6, 7-6, 6-4.

It took three hours and 17 minutes of play for the 37-year-old to come through - and he next has to face perennial Paris champion Rafael Nadal.

Nadal by contrast eased into the last four with a 6-1, 6-1, 6-3 victory over Japanese number seven seed Kei Nishikori.

The number two seed is into his 12th Roland Garros semi-finals – on the 11 previous occasions he has reached the final four, he has gone on to become the champion.

Rafael Nadal eased into the last four with a 6-1, 6-1, 6-3 victory over Japanese number seven seed Kei Nishikori ©Getty Images
Rafael Nadal eased into the last four with a 6-1, 6-1, 6-3 victory over Japanese number seven seed Kei Nishikori ©Getty Images

In the women's singles, there was yet another upset as number 26 seed Johanna Konta stunned last year's defeated finalist Sloane Stephens.

The 28-year-old Briton broke serve three times and dropped just 13 points on her serve to go through 6-1, 6-4 against the American. 

The former US Open champion and number seven seed was the clear favourite, but had no answer as Konta played near perfect tennis.

Konta, the first British woman to reach the French Open semi-finals since Jo Durie in 1983, will play unseeded Czech teenager Markéta Vondroušová in the last four.

Vondroušová shocked number 31 seed Petra Martić of Croatia 7-6, 7-5.