Ronan O'Gara kicked four crucial second half penalties as Munster battled past Perpignan at Lansdowne Road to make the Heineken Cup semi-finals for the sixth time in seven seasons.
HEINEKEN CUP: QUARTER-FINAL: Saturday, April 1
MUNSTER 19 PERPIGNAN 10, Lansdowne Road (Att: 48,500)
Scorers: Munster: Try: Paul O'Connell; Con: Ronan O'Gara; Pens: O'Gara 4
Perpignan: Try: Mathieu Bourret; Con: Bourret; Pen: Bourret
The result means Ireland will be guaranteed to have a team in the May 20 decider at Cardiff's Millennium Stadium.
O'Gara, who started at fly-half despite a slight hamstring injury, held his nerve to send the province into a mouth-watering semi-final showdown with Leinster.
Lock Paul O'Connell, one of nine Irish international returning to the Munster side after the RBS 6 Nations, swapped first half tries with Perpignan winger Mathieu Bourret in a clash that failed to fire in damp Dublin conditions.
Bourret, one of four changes to the Perpignan side just before kick-off - captain Bernard Goutta cried off with a dental complaint, landed his one and only penalty on 36 minutes to hand the visitors a 10-7 buffer for the second half, but O'Gara succeeded with place kicks on 42, 44, 66 and 69 minutes to lead his side to a precious victory.
It was a case of missed opportunities for the visiting Catalans, who came into the game on the back of four successive Top 14 wins over Castres, Clermont, Toulouse and Bourgoin.
Bourret went from hero to villain in the second half as he missed two very kickable penalties, while full-back Julien Laharrague skewed three off-the-cuff drop goal shots wide. Philippe Boher's outfit were also hampered by two untimely sin binnings as Perpignan's lack of discipline got the better of them.
Munster took their time to gel but when they did, it was the ever ready O'Connell who lurched over in the left corner for the game's first score. After prop Nicolas Mas had been sin binned for persistent offside, O'Connell powered through the tackle of Christophe Manas for a 21st-minute try. O'Connell, who had earlier lost the ball forward over the try line after a thundering run from O'Callaghan, started and finished the move as he won lineout possession and after three recycles, made for the line. O'Gara scotched rumours of his lack of match fitness as he launched over a superb conversion from the touchline.
But, seven minutes later, Perpignan were back level. Munster's Trevor Halstead was turned over in midfield and John Kelly was sucked in in defence as Bourret gassed over in the left corner to touch down and convert.
Bourret's penalty split the sides at the break. Referee Nigel Whitehouse also had to split up a touchline scuffle, with man of the match O'Connell in the thick of it, that broke out on the cusp of half time.
Neither side could raise their game in the second half as the occasion became an obvious factor. Within six minutes of the restart, O'Gara had put Munster in front with a quick penalty brace.
Perpignan's hopes of repeating their semi-final defeat of Leinster at Lansdowne Road three seasons ago slid away in the closing half-hour as scrum half Nicolas Durand was yellow carded for an off the ball incident.
With a try out of their reach, Bourret tried to keep his side in it with penalty chances on 62 and 77 minutes, but failed both times. O'Gara showed him how it was done to bring an off-colour Munster to life again.
Munster: Shaun Payne; John Kelly, Tomas O'Leary, Trevor Halstead, Ian Dowling; Ronan O'Gara, Peter Stringer; Marcus Horan, Jerry Flannery, John Hayes, Donncha O'Callaghan, Paul O'Connell, Denis Leamy, David Wallace, Anthony Foley (capt).
Replacements used: Mick O'Driscoll for Leamy (37 mins), Christian Cullen for Dowling, Jeremy Manning for O'Gara (both 80). Not used: Denis Fogarty, Federico Pucciariello, Stephen Keogh, Rob Henderson, Christian Cullen.
Perpignan: Julien Laharrague; Christophe Manas, David Marty, Jean-Philippe Grandclaude, Mathieu Bourret; Manny Edmonds (capt), Nicolas Durand; Perry Freshwater, Marius Tincu, Nicolas Mas, Rimas Alvarez Kairelis, Nathan Hines, Gregory Le Corvec, Scott Robertson, Ovidiu Tonita.
Replacements used: Sebastien Bozzi for Tonita (23-30 mins), Sebastien Bozzi for Mas, Colin Gaston for Alvarez Kairelis (both 59), Villiami Vaki for Robertson (63), Samueli Dawai Naulu for Grandclaude (77). Not used: Michel Konieck, Sylvain Dupuy, Ramiro Pez.
Sin Bin: N Mas (Perpignan) (19 mins), N Durand (Perpignan) (53)
Referee: Nigel Whitehouse (Wales)