A late drop-goal from Rory Scannell gave Munster a third successive win at Kingspan Stadium and knocked Ulster off the top of the Pro12 table.
Ulster led 14-0 after first-half tries from Charles Piutau and Rob Lyttle but Rory Scannell scored to reduce the gap.
Jaco Taute’s 64th-minute try set up a tense finale and Scannell’s 75th-minute drop-goal put Munster ahead.
Paddy Jackson tried to reply with a drop-goal at the death but it drifted wide on a frustrating night for Ulster.
Last week Jackson landed a match-winning drop-goal in the last minute to beat Exeter Chiefs in the European Champion Cup, but couldn’t conjure up the magic again as Munster finished strongly.
It was always going to be tough for the visitors to reproduce the energy of last week, when they thrashed Glasgow Warriors at an emotion-filled Thomond Park, the day after the funeral of their head coach Anthony Foley.
Despite having plenty of possession in the first half, they couldn’t penetrate Ulster’s well-drilled defence and Ian Keatley struggled with his kicking game, missing a drop-goal, two penalties and a conversion.
In the fifth minute, Munster failed to deal with Jackson’s cross-field kick and Gilroy flicked the ball into Piutau’s path for the All Black’s first Ulster try.
Winger Rob Lyttle made an instant impact, coming on to replace the injured Darren Cave, weaving through two tackles to dive under the posts and helping the home side into a 14-0 lead.
However, Ulster failed to score in an off-colour second-half showing, featuring a number of turnovers and handling errors, as Munster’s confidence grew.
Scannell crossed in the corner just before half-time to reduce the deficit to 14-5 and after Taute finished off a forward move and rumbled over with 16 minutes remaining, the visitors had all the momentum.
Jackson missed a penalty in the 70th minute and Scannell, buoyed by his conversion of Taute’s try, floated over a brilliant drop-goal with just five minutes to play.
Jackson, who landed two drop-goals against Exeter, narrowly missed his drop-goal attempt three minutes later, condemning Ulster to a third defeat in their last four matches.
Ulster: C Piutau; T Bowe, L Marshall, D Cave, C Gilroy; P Jackson, R Pienaar; C Black, R Herring (capt), W Herbst; D Tuohy, F van der Merwe; R Diack, S Reidy, R Wilson.
Replacements: J Andrew, K McCall, A Warwick, C Ross, C Joyce, P Marshall, B Herron, R Lyttle.
Munster: A Conway; D Sweetnam, J Taute, R Scannell, R O’Mahony; I Keatley, D Williams; D Kilcoyne, N Scannell, J Ryan; D Ryan, B Holland; P O’Mahony (capt), T O’Donnell, J O’Donoghue.
Replacements: V O’Brien, B Scott, S Archer, D O’Shea, R Copeland, A Griesel, A Wootton, D Goggin.
Article source: http://www.bbc.co.uk/sport/rugby-union/37805660