A last-gasp Jack Crowley drop-goal gave Munster a one-point win over Leinster in an epic United Rugby Championship semi-final in Dublin.
Munster's bruising 16-15 Irish derby victory sent them through to a final in Cape Town against the Stormers.
The South African side, who are the holders, overcame a spirited Connacht challenge to win their home semi-final 43-25.
The Galway team's defeat marked the end of boss Andy Friend's time in charge.
Munster's stunning victory over Leinster at the Aviva Stadium means they will travel to South Africa to play the Stormers in the URC final on 27 May.
Leinster boss Leo Cullen rested a number of players for Saturday's last-four encounter, with his side playing La Rochelle in the European Champions Cup final next weekend.
Crowley's superbly-executed strike with two minutes to play ended Leinster's hopes of a double and put Graham Rowntree's men within touching distance of a first trophy since 2011.
After losing Will Connors to a head injury in the first minute, with 2022 World Rugby player of the year Josh van der Flier replacing him, Cullen's side took the lead through an early Harry Byrne penalty but two Ben Healy penalties saw them fall 6-3 behind.
Leinster forward Ryan Baird had a superb solo try ruled out by Tommy O'Brien's knock-on in an aerial duel before a Jason Jenkins converted try on the stroke of half time gave them a 10-6 lead at the break.
Tadhg Beirne drove over beside the posts for his side's only try early in the second half, with referee Frank Murphy spotting the grounding and Crowley converting.
There was a a real ebb-and-flow to the game throughout and Leinster once again wrestled the momentum when replacement Joe McCarthy held off Keith Earls and Josh Wycherley to finish - but fellow replacement Ciarán Frawley could not convert.
With the score at 15-13 to Leinster, Crowley showed fine composure to fire home his decisive drop-goal.
Libbock supreme as Stormers too strong for Connacht
Manie Libbok was instrumental as reigning champions the Stormers overcame a nervy start to beat Connacht 43-25 and maintain their chances of successfully defending the trophy.
Fly-half Libbok finished with 23 points, including two key first-half tries, as the Stormers rallied from an early 8-0 deficit - with Mack Hansen opening the try scoring - to claim victory in a thrilling 10-try clash at a windswept DHL Stadium in Cape Town.
The impressive Angelo Davids, Paul De Wet, Marcel Theunissen and Ruhan Nel also crossed for the South African side, with Conor Oliver, Shamus Hurley-Langton and Byron Ralston touching down in a losing cause for battling Connacht.
Hansen's try, coming after he collected a superb long pass from captain Jack Carty, followed Carty putting the visitors ahead with a penalty.
The Stormers hit back in style with Libbok picking out the unmarked Davids with a superb cross-field kick and the right winger had the easiest of jobs to touch down.
Libbok, the tournament's leading points scorer, made light of the difficult kicking conditions to slot over a testing conversion and then put Stormers 10-8 ahead with a penalty.
The Stormers' second try came just before the half-hour when Libbock provided the finishing touch after Dan Du Plessis and Herschel Jantjies had combined to put him in under the posts.
Libbok got in again for another score before Connacht rallied and reduced the deficit to 24-13 at half-time when flanker Oliver twisted and turned to touch down.
Carty should have added a simple conversion but Davids was quick to race out and grab the ball after it had fallen off the tee, with referee Mike Adamson pointing out the Connacht skipper had started his run up.
Connacht reduced the Stormers' advantage further on 59 minutes when Hurley-Langton burrowed over and, with Carty converting, the hosts' lead was down to 24-20 with a quarter of the game remaining.
However, the Stormers seized control once again with De Wet scoring a counter-attack try.
Ralston touched down on the right to give the visitors another lifeline, but two late tries from Theunissen and Nel secured victory and a place in the final.