Holders Portsmouth struck twice in stoppage time to come from behind to beat League Two Exeter City and reach the 2020 Leasing.com Trophy final.
John Marquis headed home in the 96th minute at an ecstatic Fratton Park when a penalty shootout had been imminent.
That followed Cameron McGeehan's deflected equaliser, after Christian Burgess' 89th-minute own goal had appeared set to send Exeter through.
Pompey will face either Newport County or Salford City in 5 April's final.
Those two League Two clubs meet in Wednesday's second semi-final, which will be hard pushed to match the drama of Tuesday's tie.
All five goals at Fratton Park were scored beyond the 78th minute, with Exeter taking the lead twice but being denied by two quick, spirited Pompey comebacks.
Exeter skipper Jake Taylor volleyed in the long-awaited opener with 11 minutes to go after the hosts failed to clear a corner, before Marcus Harness turned in on the rebound to equalise.
Twice Exeter - who had already knocked out third-tier sides including Oxford and Ipswich to reach the last four - had seemed poised to set up an all-League Two final.
But Marquis' last-gasp intervention kept Pompey's bid for their second successive triumph in this competition at Wembley on track.
- 33CloseSubstituted forHawkinsat 54'minutes
- 22HarrisonSubstituted forMarquisat 24'minutes
- 16WarrenBooked at 59mins
- 8LawSubstituted forCollinsat 79'minutes
- 18FisherBooked at 50minsSubstituted forSeymourat 68'minutes
- 7MartinSubstituted forWilliamsat 72'minutes
- Craig Hicks
- Shots on Target