Thompson saved three decisive points to decide the match against Nadal 5-7, 7-6, 6-3, who was competing in his first tournament in about a year, after being absent for a long period due to a thigh injury.
Nadal won the first set, then led 6-4 in the tie-break of the second set, and seemed on his way to winning the match, but Thompson returned elegantly and settled the match in the end after a competition that lasted about 3 hours and 30 minutes.
Thompson broke Nadal’s serve in the fourth game of the final set and led 4-1 before Nadal left the court to receive treatment.
Nadal, winner of 22 major tournament titles, returned, but was unable to stop Thompson, who meets Grigor Dimitrov in the semi-finals.
“I beat Nadal in Brisbane in the quarter-finals, and I think that’s my first semi-final on hard courts as well,” Thompson said. “I couldn’t be happier.