Thiem, seeded fifth won 7-6 7-6 4-6 7-6(8-6), ending losses at two French Open finals to Nadal and also puncturing Nadal’s hope of equalling Roger Federer’s 20 Grand Slam record.
The Austrian will now meet German seventh seed Zverev, who shattered the dreams of veteran Stan Wawrinka 1-6, 6-3, 6-4, 6-2 to book his maiden place in a Grand Slam last four.
Awaiting the winner of that clash will be either seven-time champion Novak Djokovic or six-time winner Roger Federer, who meet in the other semi-final.
“All the match was on a very good level, I think we are both in great form,” said Thiem, only the second Austrian to make the Melbourne semis after Thomas Muster — the man he sacked this week as an advisor.
“Today I had the feeling I was lucky in the right situation… it is necessary because he is one of the greatest of all time. You need some luck to beat him.”
Thiem added that he was ecstatic at beating “a great champion” and “really proud how I stayed in the match”, which he called “an epic”.
Top seed Nadal had a 9-4 record over Thiem and had beaten him in all their five previous Slam meetings.
But the last time they played on hardcourts — at the 2018 US Open quarter-finals — it was a five-set marathon.
And the signs pointed that way again, with the opening set on serve to 2-2 before Thiem, gunning for a first Grand Slam title, worked a break point but couldn’t convert.
Both baseline-huggers, it became a slugfest before Nadal managed to open some doors on the Thiem serve in game eight and he broke with a perfect lob from the back of the court.
But Thiem came roaring back, breaking back with a ripping crosscourt return. He saved a set point to take it to a tie-breaker where he rocked Nadal to seal a one-set lead.
Nadal, dripping in sweat on a steamy Melbourne night, attacked in the second set and Thiem lost his serve to love to go 3-2 behind.
But the Spaniard, the 2009 champion, became riled when issued with a warning for taking too long to serve and it rattled him, sending down a double fault as Thiem squared the set at 4-4.
Nadal saved a set point and it went to another tie-break where Thiem prevailed at the crunch thanks to a lucky net cord.
The third set was similarly tight, with no breaks until Nadal teased some errors from Thiem as he served to stay in the set, pumping his fists in celebration.
But when Nadal shanked a forehand to be broken in the third game of set four, the momentum swung back to the Austrian. He lost his nerve serving for the match at 5-4 before finally getting over the line in a tie-break for a famous victory.
“Of course, I am sad. I lost an opportunity to be in the semi-finals of another Grand Slam. But I lost against a great opponent. And he deserved it, too,” said Nadal.
Thiem now faces Zverev, who bounced back after being demolished in the first set by 2014 champion Wawrinka to take control and run out a comfortable winner.
Long touted as one of the next generation capable of breaking through to end the Grand Slam dominance of Nadal, Federer and Djokovic, Zverev credited a more relaxed approach for his success in Melbourne.
“I’m doing much more things outside the court,” he said, adding that after a poor performance at the recent ATP Cup he did not have high expectations.
“Maybe this is a stepping stone. Maybe this is how it should happen.”