(CNN) -- Andy Murray ended Novak Djokovic's Dubai dominance on Friday as he handed the world No. 1 his first defeat of 2012 and earned revenge for January's Australian Open semifinal heartbreak.
The British third seed triumphed 6-2 7-5 to gain some consolation for the epic loss in Melbourne, a match which lasted almost five hours.
Djokovic went on to defend his title in this season's opening grand slam, but his hopes of matching last year's 43-match winning streak ended in the emirate this time.
Murray will play four-time Dubai champion Roger Federer in Saturday's final after the Swiss maestro beat Juan Martin del Potro 7-6 7-6 in the second semifinal.
Second seed Federer had to work hard to get past his Argentine opponent in a match dominated by service.
Federer forced six break points on Del Potro's service but could not convert them, leading to a pair of tiebreakers.
He won the first 7-5 but his opponent dominated the second and looked certain to take the match into a deciding set.
But the 16-time grand slam champion saved four set points before sealing victory on his first match point to claim the tiebreak 8-6.
Earlier, Murray brought Djokovic's run of 10 straight wins from the start of the year to an abrupt end.
The Serbian had won seven of his 11 career encounters with Murray, who is still seeking his first major title.
"Andy played a great match," Djokovic, who had won the Dubai title from 2009-11, told reporters. "He was the better player today. He was serving really well. I made a lot of unforced errors when it was important.
"It's been a great tournament here in Dubai. I look forward to Indian Wells and Miami, which are the next challenges. I think I have more than enough time to get ready for it."
Murray's form slumped after losing last year's Australian Open final to Djokovic as he was knocked out in the first round of his next three tournaments, but the world No. 4 appears to have picked himself up again under the tutelage of new coach Ivan Lendl.