Roger Federer needed more than three hours to outlast Nick Kyrgios 7-6(9) 6-7(9) 7-6(5) in a pulsating Miami Open semi-final on Friday to set up another mouthwatering final clash with Rafa Nadal.
The Swiss, who has won two of his last three tournaments including the Australian Open, had to dig deep to get through a second straight test after fending off a match point in his quarter-final victory over Tomas Berdych.
Australian Kyrgios, who has twice beaten Novak Djokovic over the last month, left his racket a twisted heap on the court after coming up short in a battle against the former world number one and a partisan crowd.
Federer's victory sets up a re-match of January's Melbourne Park title-decider against Spaniard Nadal, who earlier rolled over unseeded Italian Fabio Fognini 6-1 7-5.
Nadal, who lost all four of his previous Miami Open finals, will be out to snap a run of three straight defeats to Federer, including in the Melbourne final and at Indian Wells.
"Winning here would be something great, and an important title I haven't won," Nadal told reporters. "I served well (today). "That gives you calm when you have opportunities on the return."
The fifth-seeded Spaniard, with a display of powerful serving and opportunistic returns, did not face a break point against Fognini and put his opponent's serve under pressure throughout the 90-minute match.
Nadal raced through the first set in 26 minutes, losing only four points on serve while Fognini made 14 unforced errors.
"I was missing a lot of balls," Fognini said. "I give him a present of the first set. I was playing really bad."
The Italian came to life in the second set, including a stretch where he fended off five break points during his first two service games.
At 5-5, however, just when it looked as if Fognini might force a decisive third set, he double faulted and Nadal grabbed the break before sealing the match four points later.