Simona Halep profited from a miserable day on serve for Maria Sharapova to reach the Italian Open final with a 4-6, 6-1, 6-4 defeat of the five-time Grand Slam winner on Saturday.
The Romanian world number one will bid for the title on Sunday against Elina Svitolina in a repeat of last year's final won by the Ukrainian.
Svitolina booked her spot as she dominated Anett Kontaveit to win 6-4, 6-3 in just 74 minutes.
Halep fought back from a set down to win only her second match against Sharapova, who may have been feeling the effects of a three-hour victory the day before and was broken 10 times.
Halep has now defeated the Russian twice in a row having lost their seven previous meetings.
"She plays tough, it's difficult to return against her," Halep said. "I tried to play my game, I didn't think about our past.
"I did what I had to do, I changed tactics after the first set and it worked very well for me.
"Against Svitolina I must play my best, and we will see what happens."
Sharapova was burdened by nine double faults over a match lasting almost two and a half hours, taking her cumulative time on court to well over 12 hours this week.
"I think I battled well, it's always going to be a physical match against Simona," Sharapova said.
"Despite all things, I was there physically. No problems with that whatsoever.
"There are a lot of good things that I can take away from a week like this. Considering it's been a third tournament in weeks, that's a very good thing personally for me."
Sharapova will still earn a seeding at Roland Garros, starting next Sunday, while Halep will remain number one ahead of Caroline Wozniacki.
Sharapova was playing her second semi-final of the season and should move back into the top 30 as a result.
- Svitolina too strong -
The first meeting between Svitolina and Kontaveit featured four breaks of serve in the first eight games, with the defending champion snatching the early lead after 39 minutes.
Svitolina moved to 3-1 in the second set, reached 5-3 with an ace and served out victory a game later on her second match point.
"I'm very proud of myself already that I reached the final. You know, it was really tough, from the beginning, from the first match," world number four Svitolina said.
"I work for these kind of matches, I work on it every day. When my opponent tries to hit everything, I have an answer.
"And when my opponent tries to play maybe a little bit more into court I can attack, so that's an answer.
"Today, I think I was very solid with my performance. And this was really, really good. I'm very proud of this, that I could stay really consistent all match."
Kontaveit, ranked 26th, had been on a roll against top-10 opponents, upsetting second-ranked Wozniacki and world number nine Venus Williams this week.
"It was definitely a really good week for me. She was really tough today and played really great. I'm only taking the positives from this week," the Estonian said.
Svitolina will be bidding to win her eighth successive final dating back to last season as she bids for a third title this year after winning in Brisbane and Dubai.