Iga Swiatek staved off the challenge of an inspired Beatriz Haddad Maia to advance to her third French Open final, where she will defend her title against world number 43 Karolina Muchova.
The two-time Roland-Garros champion survived a few scares and took two hours and 10 minutes to post a 6-2 7-6[7] win over the 14th seed, who was the first woman to represent Brazil in the French Open semi-finals in the Open Era.
Haddad Maia had triumphed over Swiatek in their only previous meeting in Toronto last year, and the 27-year-old laid down a marker straight away on Thursday with a break in the opening game.
However, Swiatek broke back straight away and silenced the Brazilian contingent in the crowd as she found her stride, winning four games on the spin to take the first set with aplomb.
The Pole was again forced to do it the hard way in the second set, breaking back for 3-3 after losing her serve in the third game, and Haddad Maia squandered another four break points prior to a pivotal tie-breaker.
The 14th seed had the upper hand and brought up one set point at 6-5, but she failed to capitalise, and Swiatek worked the cross-court forehand to perfection to advance on her second match point.
Swiatek is yet to drop a set en route to the showpiece event, and the world number one will also maintain her place at the summit of the WTA standings thanks to an upset earlier in the day.
Before Swiatek's success, Muchova reached a Grand Slam final for the first in her career with an exhilarating three-set win over Aryna Sabalenka, triumphing 7-6[5] 6-7[5] 7-5 in three hours and 13 minutes.
Despite signs of an injury in the third set, Muchova remarkably came back from 5-2 down and saved a match point to progress, although an incomprehensible showing from Sabalenka - who made 52 unforced errors - helped her cause greatly.
Following eight successive holds, Muchova earned the first break of the match in the ninth game, but after failing to take a set point, the Czech immediately lost serve as Sabalenka forced a tie-breaker.
However, a blistering start to the decider saw Muchova race into a 3-0 lead, and despite signs of a recovery from the Belarusian, Muchova would win the first set with more than an hour already on the clock.
The world number 43 immediately went a set and a break up, but Sabalenka rallied to triumph in four of the next five games, landing more first serves and making amends for her first-set tie-breaker defeat to force a crucial third.
As Muchova began to tire, she struggled for opening against Sabalenka, who missed four break points in the game two of the third set before establishing a 4-2 lead on a long Muchova forehand.
However, Sabalenka could not take her first match point on the Muchova serve, and despite noticeable fatigue and an apparent leg issue from the world number 43, she stayed alive with a break in the ninth game of the third set.
Sabalenka was made to pay for a catalogue of errors while trying to serve out the match - mishit forehands in particular summed up her troubling afternoon - and Muchova capitalised with a fifth break in the 11th game before clinching an extraordinary win on a wild Sabalenka forehand. body check tags ::