Australia will face New Zealand in the T20 World Cup final on Sunday after beating Pakistan by five wickets in Dubai.
Chasing 177 for victory, Australia were in trouble at 96-5 when Marcus Stoinis (40* off 31 balls) and Matthew Wade (41* off 17), put on 81 runs to finish off the match with one over to spare.
The left-handed Wade, who was dropped by Hasan Ali on 21, smashed three straight sixes off Shaheen Shah Afridi in the 19th over.
David Warner made 49 off 30 balls before being caught behind off leg-spinner Shadab Khan, who took four wickets.
Australia suffered an early blow when Shaheen trapped skipper Aaron Finch lbw for nought as the Pakistan-dominated crowd erupted.
The in-form Warner kept up the attack from one end with support from Mitchell Marsh.
But Shadab turned up the heat in the seventh over to get Marsh out for 28.
The leg-spinner struck in each of his four overs to claim the big wickets of Steve Smith, for five, Warner, and Glenn Maxwell, for seven, as Australia lost half their side for 96.
Warner walked when he was caught behind after hitting three fours and three sixes, but replays later showed there was no contact off the batter’s bat.
Stoinis and Wade steered the team to their second T20 World Cup semi-final and dream of a maiden title.
Mohammad Rizwan, who top-scored with 67, and Fakhar Zaman, who hit an unbeaten 55 off 32 deliveries, put on 72 for the second wicket to help Pakistan to a 176-4 after being put in to bat.
Rizwan’s opening stand of 71 with skipper Babar Azam, who made 39, unsettled the Australian bowling in the first six overs of powerplay.
Leg-spinner Adam Zampa broke the opening stand after sending back Babar, who has amassed 303 runs to lead the tournament’s batting chart, caught at long on following his 34-ball knock laced with five fours.
Rizwan kept up the attack and smashed Zampa for a six to become the first player to aggregate 1,000 runs in T20Is in a calendar year.
He survived a hit on the helmet grill by a quick bouncer from Pat Cummins as the physio came in to conduct a concussion test with the batter smiling.
A six and a single off pace bowler Josh Hazlewood brought up his fifty in 41 balls with Zaman at the other end before he exploded as well.
Rizwan finally fell to Mitchell Starc while trying to force the pace and was caught at mid-off, ending an attacking partnership that came in 46 balls.
Zaman finished off the innings with two sixes in the final over from Starc who took two wickets.