Tomas Berdych saved three match points on his way to a stunning win over five-time champion Roger Federer in the Dubai Championships semi-finals.
The Czech, seeded third, won 3-6 7-6 (10-8) 6-4 to set up a final against world number one Novak Djokovic.
"It's obviously unfortunate," said second seed Federer. "It was a pity to lose that one, but Tomas did well to hang in there."
Djokovic earlier beat Argentina's Juan Martin del Potro 6-3 7-6 (7-4).
The Serb swept through the first set before a tighter second that saw him recover an early break, only to fail on his first attempt to serve out the match.
Djokovic ultimately triumphed in the tie-break, his forehand winner the only point against serve.
"His serve is very powerful," said Djokovic. "His forehand from the back of the court he can do anything with - I needed to stay in it when I was a break down.
"I played a poor game when I needed to close it out but he's a great player, so it was always going to be challenging."
Federer looked in control of the second semi-final after taking the first set and recovering from 5-2 down in the second to force a tie-break, but Berdych's serve came to the rescue.
The Czech fended off two match points from 6-4 down, and another at 8-7, before converting his third set point with a forehand return winner.
Berdych went into the decider with the confidence of having won four of his previous seven matches against Federer, and he moved ahead with a break in game five when the Swiss hooked a forehand wide.
A first match point for Berdych went begging when he netted a forehand on the Federer serve, but the 27-year-old former Wimbledon finalist calmly closed out the match in the following game after two hours and 20 minutes.
"It feels really amazing," said Berdych. "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."
Federer added: "Obviously I leave this match with a lot of regrets - serving for the match, having chances in the beginning of the second when he wasn't quite in the match yet to go a set and a break up. [There were] a few points where things just didn't happen for me."