After knocking out British No.1 Cameron Norrie, Casper Ruud continued his impressive run in the Miami Open by knocking out world No.4 Alexander Zverev.
The 23-year-old Norwegian has enjoyed a superb run of form throughout the tournament, failing to lose a set before Wednesday's match against Zverev.
But despite losing his first set of the tournament, Ruud recovered well in the end to record a 6-3 1-6 6-3 win over Zverev.
It was clear from the start of the match that Ruud entered the court full of confidence, and the Norwegian youngster enjoyed plenty of success with his serve as he raced to a first set lead.
However, Zverev turned up the heat in the second set, and after the German saved two break points at 0-0, he didn't look back as he stormed the set 6-1.
Put on the back foot in the second set, Ruud did remarkably well to regain his composure and come back fighting in the third and decisive set.
An early break for the Norwegian set the tone, and he was able to hold serve impressively throughout, denying Zverev any way back into contention.
Ruud was able to see out the third set identically to the first, setting up a semi-final clash with Argentina's Francisco Cerundolo, who has been somewhat a surprise in the tournament so far, given his ranking as world No.103.
Following his win, Ruud attributed his success to his serving ability.
"It was great to get that break early on [in the third set] and I was able to keep it all the way out.
"I was serving well. I can thank my serving for the win today."
Ruud will have to shake off any complacency before facing Cerundolo in the final four. The Argentine can consider himself slightly lucky after quarter-final opponent Jannik Sinner retired in the first set, but the 23-year-old has still put on some impressive performances across the last week of action.
Should Ruud get the job done, he'll reach a career first ATP Masters 1000 final.