Novak Djokovic is one game away from a record-equalling sixth Miami Open title after getting through a tough semi-final with David Goffin.
The world number one, who had eased to the last-four stage, was given his toughest test yet by the Belgian, but had enough to come through and win 7-6 (7/5) 6-4 and now will try and level Andre Agassi's number of titles in Miami.
The pair exchanged a break apiece in the opening set before Djokovic, who had been run ragged by Goffin, prevailed in the tie-break.
It was another tight affair in the second until Djokovic typically used adversity to his advantage. After being called for a time violation, despite appearing to be injured, the Serb vented furiously at the umpire and then took his frustrations out on Goffin's serve as he decisively broke to seal the second set 6-4.
"It was windy, it was humid, it was warm," Djokovic said on the ATP Tour Website. "It was like everything was thrown out there. And to overcome those obstacles and conditions was something that I'm proud of. I managed to stay tough in the right moments."
Djokovic will meet Kei Nishikori in the final after the sixth-seed eased past Nick Kyrgios in straight sets.
Nishikori, who saved five match points in his quarter-final with Gael Monfils, put in a superb performance to see off the Australian, winning 6-3 7-5 to reach his second Masters 1000 final.