Roger Federer set up a French Open semi-final against defending champion Rafael Nadal by overcoming fellow Swiss Stan Wawrinka in four sets.
Shortly before Federer won, Nadal completed a 6-1 6-1 6-3 win over Kei Nishikori in the last eight.
But 20-time Grand Slam champion Federer endured an energy-sapping three hours and 17 minutes on Court Suzanne Lenglen to win 7-6 (7-4) 4-6 7-6 (7-5) 6-4.
“We played a great match today,” said Federer, 37.
Both matches were interrupted because of thunderstorms in Paris.
“The break for the rain makes it’s tough for players because it breaks your rhythm,” added Federer, who dropped his first set of the tournament.
“Stan has had some tough years with injuries. I had to break his rhythm because he’s so powerful. I took some risks and they came off but I was pretty lucky at the end.”
Nadal, 33, is into his 12th semi-final at Roland Garros and has won the tournament on all of the 11 previous occasions he has reached this stage.
“It is an incredible feeling, so much emotion,” said Nadal.
“It is important for me to make another semi-final. I am very happy.”