Petkovic, a 28th-seeded German, beat 2012 French Open runner-up Sara Errani of Italy 6-2, 6-2. The fourth-seeded Halep defeated 2009 champion Svetlana Kuznetsova, also 6-2, 6-2.
"I have to say, today I was in a real zone. I didn't think at all," Petkovic said. "I was just focused on what I had to do."
Neither Petkovic nor Halep has ever played in the semifinals of a Grand Slam tournament. But they will meet on Thursday with a spot in the final against either Maria Sharapova or Eugenie Bouchard on the line.
Petkovic was first to complete her match on a wet day at Roland Garros. And although she had some trouble holding serve at the start of each set, her groundstrokes consistently landed near the lines, many of them for winners.
"I had a very good game plan from my coach. It didn't work in the beginning, so I was getting a little, not panicked, but when you have a certain game plan and you lose the first two games and it's not working, so I was kind of getting a little worried," Petkovic said. "I was lucky that I started playing better and that I was putting more balls into play."
The match on Court Philippe Chatrier, the main stadium at Roland Garros, started under overcast skies after a three-hour delay. With Errani leading 2-1 but facing a break point, the rain returned.
Play continued despite the conditions and Petkovic broke with a forehand winner on her second break opportunity.
The drizzle continued until the changeover with Petkovic leading 5-2. By the time the second set started, the sun was out.
Although Petkovic was broken to open each set, she won the final six games of the first set, and the final four games of the second.
"Very, very tired. I didn't have, mentally, (any) energy," Errani said. "I don't know why I was dead. I (didn't) have power (in) my legs."
Petkovic had been 0-3 in major quarterfinals, losing at that stage at the Australian Open, French Open and US Open in 2011. Her ranking dropped after that, as low as 177th last year, because of a right knee injury.
Errani was the runner-up at Roland Garros in 2012, losing to Sharapova. Last year, the 10th-seeded Italian reached the semifinals and lost to eventual champion Serena Williams.
Halep and Kuznetsova were on court for only four minutes when the rain started. But like the other quarterfinal match, play continued through the drizzle on Court Suzanne Lenglen.
Kuznetsova, a two time Grand Slam champion who has not reached a major semifinal since winning the title at Roland Garros five years ago, said the weather was not to blame for her poor play.
"You can put many excuses or whatever, but I think the key is that Simona was at her best," Kuznetsova said. "My movement was not perfect. The shots (were) not so good."
Halep, the highest-seeded player remaining in the draw, lost in the quarterfinals at the Australian Open in January, her best previous performance at a Grand Slam tournament.
However, the Romanian has moved quickly up the rankings over the last year. In the last 13 months, she has won seven titles, second only to Williams. But Halep is the only player to have won titles on clay, grass and hard courts during that stretch.
The Associated Press contributed to this report.