Ulster survived the concession of two tries in the final quarter of Saturday night's Celtic League tussle with Munster to end their red-shirted rivals' 18-match unbeaten home record.
CELTIC LEAGUE: Saturday, December 3
Munster 17 Ulster 20, Musgrave Park (Att: 7,000)
Scorers: Munster: Tries: Flannery, Wallace; Cons: O'Gara 2; Drop: O'Gara
Ulster: Tries: Trimble, Bowe; Cons: Humphreys 2; Pens: Humphreys 2
Munster's proud record, which stretched back to April 2004, finally fell as Ulster held on stoutly, staving off the best of the home side's efforts through six minutes of injury-time, to move temporarily second in the league standings.
Ulster, too, had to survive sin-binnings for two of their Southern Hemisphere imports, Justin Harrison and Isaac Boss, but having played the better for longer periods, the men from the north deservedly took the spoils.
David Humphreys kicked Ulster in front on 11 minutes as he punished Mick O'Driscoll for an offside.
Ronan O'Gara drove over a drop goal in reply, immediately off the restart, before recent Ireland cap Andrew Trimble plunged over for the tie's opening try on 14 minutes. Full back Bryn Cunningham created the score with a midfield snipe chip ahead and lanky centre Trimble beat out former Great Britain rugby league star Gary Connolly in the race for the touchdown.
Humphreys converted for 10-3 and while Munster's game was pockmarked by turnovers, they should have levelled again on 26 minutes. A scampering 50-metre run from David Wallace deserved better, but winger Anthony Horgan, having gathered in an inside pass from O'Gara, fumbled over the Ulster try line with Tommy Bowe for company.
Three minutes later, Munster paid the price as superb continuity from Ulster produced their second try. Harrison, Humphreys and hooker Rory Best combined to send Bowe weaving in off his right wing and past the tackle of Peter Stringer to score.
Humphreys converted and whacked over a 37th-minute penalty, from a metre inside his own half, to push Ulster 17 points in front and leave the large Musgrave Park faithful stunned.
Harrison was then yellow-carded for a silly 'spear-like' tackle on O'Gara, but Ulster held firm with 14 men. Seven minutes into the second half, replacement scrum half Boss, just on for the injured Kieran Campbell, who worryingly went off with a hand injury, was carded by referee Alain Rolland for cynically slowing up a Munster ruck underneath the Ulster posts.
Mark McCall's men maintained their 17-point buffer until the 62nd-minute when, ironically, both Harrison and Boss had come back into play. Munster lock O'Driscoll took a close-in lineout and the home pack mauled clean through for hooker Jerry Flannery, who was capped against Romania last Saturday, to muscle over.
O'Gara converted and added the extras to a close-in 66th-minute try for David Wallace on the left after the Ulster defence had been stretched again by the Munster pack.
Surely a third try for either side was on the cards now? Declan Kidney's side reckoned so. They turned down the chance to line up a 79th-minute penalty at the posts, opting instead to go for touch. But like so many other Munster attacks on the night, the subsequent lineout and maul saw the ball lost forward.
Another late chance arose in deepest injury-time when Horgan was put haring down the left flank in a one-on-one situation with Paul Steinmetz, but the latter stood firm and another knock-on resulted in the final turnover for a relieved Ulster outfit.
Timeline: 12 minutes - Ulster penalty: David Humphreys - 0-3; 13 mins - Munster drop goal: Ronan O'Gara - 3-3; 14 mins - Ulster try: Andrew Trimble - 3-8; conversion: David Humphreys - 3-10 ; 29 mins - Ulster try: Tommy Bowe - 3-15; conversion: David Humphreys - 3-17; 37 mins - Ulster penalty: David Humphreys - 3-20; 38 mins - Ulster yellow card: Justin Harrison; HT - Munster 3 Ulster 20; 47 mins - Ulster yellow card: Isaac Boss; 62 mins - Munster try: Jerry Flannery - 8-20; conversion: Ronan O'Gara - 10-20; 66 mins - Munster try: David Wallace - 15-20; conversion: Ronan O'Gara - 17-20; FT - Munster 17 Ulster 20.
MUNSTER: Jeremy Manning; Anthon Pitout, Gary Connolly, Trevor Halstead, Anthony Horgan; Ronan O'Gara, Peter Stringer; Frank Roche, Jerry Flannery, John Hayes, Donncha O'Callaghan, Mick O'Driscoll, Denis Leamy, David Wallace, Anthony Foley (capt).
Replacements used: Marcus Horan for Roche (32 mins), Mossy Lawlor for Manning (51), Stephen Keogh for Wallace (70); Not used; Denis Fogarty, Trevor Hogan, Tomas O'Leary, Barry Murphy.
ULSTER: Bryn Cunningham; Tommy Bowe, Andrew Trimble, Kevin Maggs, Paul Steinmetz; David Humphreys, Kieran Campbell; Bryan Young, Rory Best, Simon Best (capt), Justin Harrison, Matt McCullough, Neil Best, Neil McMillan, Roger Wilson.
Replacements used: Isaac Boss for Campbell (46 mins), Stephen Ferris for McMillan (69); Not used: Rod Moore, Nigel Brady, Ryan Caldwell, Adam Larkin, James Topping.
Referee: Alain Rolland (IRFU)