Perth Glory will play in their second Hyundai A-League Grand Final next weekend after a night of incredible drama ended in a 5-4 penalty shootout victory over Adelaide United at HBF Park.
In front of a new club record A-League crowd of 17,868, Glory led 2-0 during normal time courtesy of Diego Castro's brace, only to be pegged back by Baba Diawara's close-range finish and Ryan Kitto's stoppage-time strike.
The hosts then regained the lead in the first period of extra-time via substitute Scott Neville's header, before the Reds responded in kind through Michael Marrone five minutes from the end.
Respective skippers Castro and Isaias duly saw their spot-kicks saved during the subsequent shootout which went to sudden-death with the two sides locked at 4-4.
Liam Reddy and Paul Izzo proceeded to save two more penalties apiece before the Glory man, who had scored earlier in the shootout, produced a third incredible stop to keep out Nathan Konstandopoulos.
And so it was left to Joel Chianese to step up and fire Tony Popovic's side into next week's showpiece decider and end Adelaide's season in the cruellest of fashions.
In his post-match interview, Glory's Head Coach was quick to compare the night's remarkable events to the two European Champions League Semi-Finals from earlier in the week.
"It was a crazy game and I think we learned in world football this week that anything can happen," he said.
"We led right until the end and Adelaide showed the incredible spirit they have as a team [to come back].
"Our character then was amazing. We stayed composed in the penalty shootout and it was tough.
"With the character that they [the Glory players] have shown all year, it didn't surprise me that they had enough to win the game."
Adelaide began the game brightly, George Blackwood forcing the first save of the night from Liam Reddy after climbing highest to nod a fine Craig Goodwin cross goalward.
But Glory's response to that early scare was almost instant, Dino Djulbic meeting Jason Davidson's cross with a thumping header that left Izzo grasping thin air only for the ball to crash down back out off the underside of the bar and bounce back out without crossing the line.
Both teams continued to threaten in a compelling opening quarter and eventually it was the hosts who made the breakthrough on 29 minutes.
Chris Ikonomidis bisected the Adelaide defence with an inch-perfect pass and Andy Keogh's decoy run drew two defenders away from the ball allowing Castro to race in and crash home his shot at the near post.
Glory went close again shortly before the break, Izzo just doing enough to keep out Ivan Franjic's stinging cross-shot which threatened to creep in at the far post.
The Reds began the second half as strongly as they had the first, but again failed to unduly trouble Reddy and were ultimately punished for a second time by Castro with 16 minutes left.
This time Davidson led a rapid counter-attack and fed Ikonimidis who in turn picked out Castro on the left flank.
The Spaniard then cut inside on to his right foot and neatly placed his shot wide of Izzo's despairing dive into the bottom corner.
The visitors, however, were far from done and swiftly halved the arrears via substitute Diawara who struck from close range after Glory had failed to clear their lines.
And deep into stoppage-time, Kitto fired through a crowded box to ensure at least another 30 minutes would be needed to separate the sides.
Just before the break in extra-time, substitute Neville nodded home a superb Davidson cross to make it 3-2, but that goal was cancelled out by a very similar headed effort from Marrone five minutes from time.
So penalties were required and with the tension becoming all but unbearable, Reddy and Chianese emerged as the heroes who stepped forward to haul the men in purple over the line.
Hyundai A-League 2019 Semi Final 1
Perth Glory 2 (Castro 29', 74') Adelaide United 2 (Diawara 81', Kitto 90+4')
Glory win 5-4 on penalties
Referee: Alex King
Perth Glory: 33.Liam REDDY (gk), 3.Jason DAVIDSON, 4.Shane LOWRY, 5.Ivan FRANJIC (23.Scott NEVILLE 97'), 6.Dino DJULBIC, 9.Andy KEOGH (7.Joel CHIANESE 85'), 13.Matthew SPIRANOVIC, 17.Diego CASTRO, 19.Chris IKONOMIDIS (11.Brendon SANTALAB 111'), 27.JUANDE, 88.Neil KILKENNY 20.Jake BRIMMER 97')
Substitutes not used: 1.Tando VELAPHI (gk)
Yellow cards: Castro, Santalab
Red cards: None
Adelaide United: 20.Paul IZZO (gk), 2.Michael MARRONE, 3.Scott GALLOWAY (6.Vince LIA 101'), 7.Ryan KITTO, 8.Isaías SÁNCHEZ (c), 11.Craig GOODWIN, 14.George BLACKWOOD (9.Baba DIAWARA 58'), 16.Nathan KONSTANDOPOULOS, 22.Michael JAKOBSEN (23.Jordan ELSEY 79'), 26.Ben HALLORAN, 31.Mirko BOLAND (17.Nikola MILEUSNIĆ 75')
Substitutes not used: 1.Daniel MARGUŠ (gk)
Yellow cards: Galloway, Isaias, Boland, Marrone
Red cards: None