Jankovic made life tough for herself before winning in straight sets
World number one Jelena Jankovic remained on course for a third title in succession by beating Flavia Pennetta 7-6 (8-6) 6-3 at the Kremlin Cup.
The Serbian now faces defending champion and Olympic gold medallist Elena Dementieva in the semi-finals.
"It was a tough match for me today and I didn't play it the way I wanted to," said Jankovic after her win.
Second seed Dinara Safina beat fifth seed Svetlana Kuznetsova 6-4 7-5 to set up a clash with Vera Zvonareva.
Pennetta led 3-0 in the first set tie-break against Jankovic before losing momentum with a double-fault.
She then had chances to go 4-2 up in the second set during a game of 12 deuces but Jankovic clung on.
After that, the Italian's spirit was broken and the top seed rattled off the last three games to seal a match notable for alarming errors and stunning winners from both players.
She is the strongest player in the world
"I'm feeling a bit tired as I've been playing a lot recently but I've got two more matches left here so I'll try my best," said Jankovic, who won titles in Stuttgart and Beijing in the past two weeks.
Earlier, Dementieva beat fellow Russian Nadia Petrova 6-4 4-6 7-6 (8-6) to reach the last four.
Dementieva won three games in a row to take the first set after trailing by a break, but Petrova came from 4-1 down in the second to force a decider. Dementieva again squandered a 4-1 lead but eventually won on her third match point in the tie-breaker.
Assessing Jankovic's form, Dementieva said: "She is the strongest player in the world. She's playing terrific tennis and has just won back-to-back titles on different surfaces and in different parts of the world.
"It won't be an easy match. It will be interesting for me to challenge her."
Meanwhile, Zvonareva beat Dominika Cibulkova of Slovakia, 7-5 6-4. Seventh seed Zvonareva saved five break points in the 10th game of the first set before breaking Cibulkova in the next game to win it.
Two breaks early in the second set secured her a berth in her first semi-final after five quarter-final appearances in her home-town event.
In the men's quarter-finals, Marat Safin enjoyed one of his best wins in recent years as he saw off top seed and fellow Russian Nikolay Davydenko 7-6 (7-5) 4-6 6-4.
Safin will next face Mischa Zverev of Germany, who rallied from 5-1 down in the third set to advance to his first career ATP Tour semi-final with a 6-4 3-6 7-5 victory over Viktor Troicki of Serbia.
French veteran Fabrice Santoro, 35, won the first set 6-3 and was 2-0 up in the second when fellow Frenchman Paul-Henri Mathieu, seeded fourth, retired because of illness.
Igor Kunitsyn made it two Russians in the men's last four as he beat Jeremy Chardy of France 6-4 6-2.