Tomas Berdych set up a desert showdown against top-seed Novak Djokovic after overcoming defending champion Roger Federer at the Dubai Tennis Championships.
Berdych defeated the five-time champion 3-6 7-6 (8) 6-4 in two hours and 19 minutes on the super-fast surface to reach his second ATP tour final in succession, but only after Federer squandered three match points.
Third seed Berdych has now defeated the Swiss ace in five of their eight meetings since 2010, including two in Grand Slam competition, while second-ranked Federer has still not reached a final in 2013.
The 17-time Grand Slam winner was in clinical form early on and comfortably broke his opponent to claim the opening set.
However, Berdych, who lost in the final of the Marseille Open last week, broke to lead 5-3 in the second set although Federer struck back immediately.
Berdych then took the match to the distance after showing superb composure and resolve by saving three match-points in a back-and-forth tiebreaker before eventually claiming it 10-8.
The final set was edge of the seat stuff as Berdych broke to lead 3-2, only for Federer to save two match points before holding for 5-4. But the sixth-ranked Czech finished it off when Federer hit a crosscourt forehand into the net.
"It feels really amazing," Berdych said. "It's really just about one single point that I was able to make better than him. For me, it was a celebration of tennis. I like to play him so much because of what he has achieved."
He will now tackle world number one Novak Djokovic in Saturday's final.
The Serb will go into the contest as red-hot favourite though as he holds a 12-1 head-to-head winning record over Berdych.