Ulster closed the gap on Munster at the top of the RaboDirect PRO12 standings to six points after beating the pace-setting visitors 29-19 at Ravenhill.
Ruan Pienaar kicked five penalties and converted the first-half tries from Jared Payne and Darren Cave to claim a 19-point haul.
Despite Ulster leading 20-0 just before half-time, Munster battled back with tries from Ivan Dineen, Dave Kilcloyne and James Coughlan to close at one stage to 23-19 in what was an absorbing contest.
But Ulster held their nerve and Pienaar kicked his final penalty in the last minute as Paul O'Connell was sin-binned, allowing the home side to recover from their defeat to Leinster last time out.
Pienaar, taking over the kicking duties from Paddy Jackson, got Ulster under way after three minutes with a penalty and then there was a lengthy hold-up as referee Alain Rolland consulted with the television match official (TMO) over Felix Jones' dragging down of Craig Gilroy with a a possible try chance on offer.
Ulster put the ball in the corner from the penalty, and from the lineout Jackson's chip resulted in Jared Payne scoring to the right of the posts.
Munster's Ian Keatley was then wide with a seventh-minute penalty and Pienaar landed a monster penalty from just inside his own half to take Ulster to 13-0.
Keatley then missed a second penalty after 20 minutes which led to a period of Ulster domination, but Luke Marshall was hauled down near the line after Andrew Trimble's great break and then John Afoa's foot hit touch as he dived over on the right.
Ulster then scored a sensational try off a Munster turnover with Payne burning Paul O'Connell and setting Trimble free before Cave came in at an angle to score in the same corner where Afoa had been denied a few minutes earlier.
Pienaar's marvellous conversion made it 20-0 to Ulster, but the visitors immediately hit back and in the last play of the first half Dineen touched down.
Keatley again missed as he attempted to convert, with the ball bouncing off the post to narrow Ulster's lead to 20-5 at the turnaround.
Munster still had the bit between their teeth and after Keatley hit the post again in the second half with an early penalty shot, prop Kilcoyne was driven over from a lineout maul, with Keatley managing to kick his first points after four misses.
Pienaar was then well short with a 56th-minute penalty but made no mistake with a straightforward chance on the hour mark, a vital score to settle Ulster after conceding 12 points without reply.
But Munster again struck back after Rolland penalised Ulster - seemingly harshly - in the tackle zone. And another driving maul from a lineout take from Peter O'Mahony saw the red shirts rumble over, with Coughlan getting the 65th-minute touchdown.
Keatley again converted and Munster were just four points behind, but with 10 minutes remaining Pienaar slotted his fourth penalty to again nudge Ulster further in front.
Munster came again and were held up at the line before Ulster turned them over in a five-metre scrum courtesy of Afoa.
And then in the final minute, O'Connell was sin-binned by Rolland for back-chat after being pinged at the breakdown, and Pienaar did the necessary with the penalty.