A late converted John Hodnett try saw Munster edge the Stormers 19-14 to win a fiercely contested United Rugby Championship Grand Final in Cape Town.
The victory saw the Irish province secure their first trophy since 2011.
Manie Libbok converted his own try to make it 7-0 but Diarmuid Barron and Calvin Nash crossed for Munster to give them a 12-7 half-time lead.
Deon Fourie scored a converted try to move Stormers ahead but Hodnett went over with five minutes remaining.
A 5,000 strong Munster contingent travelled to Cape Town and took their place in a sold-out 55,000 capacity DHL Stadium to watch their team end their 12-year trophy drought by seeing off the defending champions.
Stormers went into the game as favourites despite Munster's strong away form, which included wins on the road over their final opponents in round 17 of the regular league season, plus Leinster and Glasgow Warriors in the knockout rounds.
It was an energetic start from Munster but a loose pass from centre Antoine Frisch was intercepted by Libbok, who sprinted in from distance and touched down before adding the extras.
It was not long before Graham Rowntree's side hit back, with hooker Barron steering a line-out maul over the line and then crashing over to bring his side back into the game despite the conversion from Jack Crowley going wide.
A yellow card for Stormers number eight Evan Roos appeared to put Munster in the ascendancy as they dominated territory and possession but struggled to convert this into points, having two tries ruled out.
Just before the half-hour mark, Munster's intensity and varied attack was rewarded with a try from Nash who collected a skilful cross-kick from Crowley to give his side a deserved lead.
Stormers battled their way back into the game just before the interval, but Munster's impressive defence resisted their efforts and the visitors went in five points to the good at the break, with all to play for.
Momentum swung in Stormers' direction in the early stages of the second half after Mike Haley was shown a yellow card for a collision with a Stormers attacker.
Stormers piled on the pressure and a line-out maul resulted in Fourie coming up with the ball, having crashed over the line, with Libbok's conversion giving his side the lead.
A tense final quarter followed, with both sides locked in an arm-wrestle of back-and-forth action as the two teams appeared sapped of energy.
In the last few minutes, Munster worked their way into the Stormers' 22 and a well-worked move from Haley and an inside pass from Shane Daly, sent Hodnett through to burst over the try-line to win the game for his side, with Crowley adding the extras to extend the winning margin to five points.
Munster: Mike Haley; Calvin Nash, Antoine Frisch, Malakai Fekitoa, Shane Daly; Jack Crowley, Conor Murray; Jeremy Loughman, Diarmuid Barron, Stephen Archer; Jean Kleyn, Tadhg Beirne; Peter O'Mahony (capt), John Hodnett, Gavin Coombes.
Replacements: Niall Scannell, Josh Wycherley, Roman Salanoa, RG Snyman, Alex Kendellen, Craig Casey, Ben Healy, Keith Earls.
Stormers: Damian Willemse; Angelo Davids, Ruhan Nel, Dan du Plessis, Leolin Zas; Manie Libbok, Herschel Jantjies; Steven Kitshoff (capt), Joseph Dweba, Frans Malherbe; Marvin Orie, Ruben van Heerden; Deon Fourie, Hacjivah Dayimani, Evan Roos.
Replacements: JJ Kotze, Ali Vermaak, Neethling Fouche, Ben-Jason Dixon, Willie Engelbrecht, Marcel Theunissen, Paul de Wet, Clayton Blommetjies.