Veronika Kudermetova upset the Doha Open seedings to beat American teenager Coco Gauff 6-2, 3-6, 6-1 on Thursday and set up a semifinal with world No 1 Iga Swiatek.
Russian 25-year-old Kudermetova, ranked eighth, needed just over two hours to complete victory over the world No 4.
If she is to reach a first WTA final since Istanbul last April, Kudermetova will have to get past a refreshed Swiatek.
The reigning French and US Open champion reached the last-four when last weekend’s Abu Dhabi title winner Belinda Bencic withdrew from their quarterfinal.
Kudermetova, who will be playing in her second semifinal of the year, has not won a set from Swiatek in two previous encounters.
Polish star Swiatek hardly broke sweat in her opening match at the tournament, dropping just one game and needing only 53 minutes to defeat Danielle Collins on Wednesday.
Last season, Swiatek kicked off a 37-match win streak in Doha, where she captured her first WTA 1000-level hard-court title.
‘Easier physically’
A day after saving two match points to beat Jelena Ostapenko, second seeded Jessica Pegula had a much easier time, cruising to a 6-3, 6-2 win over Beatriz Haddad Maia.
Pegula won six matches to reach the final four in Doha two years ago after coming through the qualifiers.
“It’s a little bit different than the qualifying days,” she said.
“It’s a lot easier physically, but definitely still very tough with how strong and tough the field is.”
Pegula hit 22 winners to 16 unforced errors on Thursday while Haddad Maia made just 12 winners to 20 unforced errors.
The American will face Maria Sakkari after the Greek knocked out WTA Finals champion Caroline Garcia of France 6-2, 6-7 (5), 7-6 (5).
“The conditions were very tough for both of us,” Sakkari said.
“I think we did a really good job in the second set of holding our serves and not giving the opponent a chance to break. You don’t see that often in women’s tennis. It was pretty impressive.”
Sakkari finished with 30 winners to 21 unforced errors while Garcia finished with 43 winners to 44 unforced errors