Halep, who assured herself of retaining the No. 1 ranking with the victory, earned a fourth chance to win her first major title.
Stephens defeated Keys in straight sets when she won the US Open last September.
However, her sights now turn to the final where she is desperate to erase the memories of last year's horror show where she surrendered a set and a 3-0 lead to lose to Jelena Ostapenko.
The 28-year-old Halep will now be up against Muguruza. At the Miami Open in March, she won the title, beating four major champions in a row.
Garbine Muguruza and Simona Halep meet in the semifinals of the 2018 tennis French Open. "It was very nice to play like that", a beaming Halep, who trailed Muguruza 1-3 in head-to-head clashes, said. "I have more experience now".
Sharapova, playing at Roland Garros for the first time since 2015, suffered her most one-sided defeat at the Slams since a 6-3, 6-0 loss to Victoria Azarenka in the 2012 Australian Open final. Nadal ended the Argentinian's run at the U.S. Open a year ago with a four-set victory. "My head won it", Halep said.
"I think it would be unusual for me not to include someone that I have competed against for so many years", said the 31-year-old.
And don't expect the moment to get to Halep-She knows the rules of engagement.
"I was up against a great player so I had make sure I brought my best tennis".
"It's never easy playing someone from your country, let alone someone you actually, like, care about and you're friends with", Stephens said. "I mean, I think she made everyone wait a little bit". She's the higher ranked player.
Thoroughly and clinically outplayed by Muguruza in every respect, Sharapova looked uncomfortable and off-balance for most of her brief stint on court and had a particularly deflating second set in which she logged two winners to 15 unforced errors. Her shots were very, very deep and very aggressive constantly.
'It's one of those matches where you train so hard to achieve a Grand Slam final.
"I think she just wasn't healthy", he said.
Stephens lost her serve for the first time against Keys when serving for the match at 5-2. The world No. 1 then closed out what I would consider the biggest win of her career.
In a re-run of last year's US Open final, Stephens once again got the better of her fellow American Madison Keys in two sets.
"It's really tough to get any ball by her, but especially today, she was neutralizing so well". Halep, who started attacking from the start, was as tidy as she was effective on the day, finishing with six fewer errors than her opponent's count of 31.
"I just do what I have been doing all the days, really".