James Hume starred as Ulster marched into the United Rugby Championship semi-finals with an emphatic victory over Munster at Kingspan Stadium.
John Cooney's opening score and a Stewart Moore double lifted Ulster to a 19-7 half-time lead with Jean Kleyn getting the away side's first-half try.
Keith Earls scored two second-half tries for Munster but Nick Timoney and Hume scores ensured an Ulster win.
Ulster will face either Edinburgh or the Stormers in the last four.
The result keeps alive Ulster's hopes of claiming a first trophy since 2006 while it is a disappointing end to the season for Munster, who must now look to a new era with head coach Johann van Graan set to depart to take over at Bath.
When Munster beat Ulster 24-17 in Belfast on 22 April, the northern province's season appeared in danger of unravelling after three straight URC defeats and a European exit at the hands of Toulouse.
However, after securing a top-four finish with hard-earned victories over Edinburgh and the Sharks, Ulster maintained their late-season momentum by putting an error-strewn Munster side to the sword in the Belfast sunshine.
Dan McFarland's side can now look forward to a trip to either Edinburgh or the Stormers, who face each other on Saturday evening.
Moore double helps Ulster build commanding lead
Cooney's opening try arrived in bizarre circumstances after 10 minutes. With several players from both sides preoccupied with a scuffle that had broken out involving Ulster captain Iain Henderson and Munster's Alex Kendellen, Hume took a quick-tap penalty and fed Cooney out left for the scrum-half to cross unchallenged and mark his 100th cap in style.
That failed to rattle Munster, however, and the visitors quickly got themselves back on level terms when Kleyn crossed following fine work from Gavin Coombes with the score surviving a TMO check for a potential knock-on.
From there, Ulster lived dangerously with Cooney reading a turnover to produce a crucial intervention and stop Keith Earls' charge towards the tryline.
Ulster then had Robert Baloucoune to thank after a couple of pieces of excellent individual play. First, the Ireland wing landed a crunching tackle on Joey Carbery to stop the Munster fly-half finding Earls out wide for a certain try.
And having saved Ulster in defence, Baloucoune provided the penetration for the home side's second try, taking Hume's pass in his stride to charge through a gap before finding Stewart Moore, who exchanged passes with Ethan McIlroy before putting the finishing touches on a sweeping team move.
Munster's attempts - spearheaded by the impressive Coombes - to hit back quickly for the second time were foiled when Josh Wycherley knocked the ball on close to the Ulster posts.
The visitors' malaise deepened on 33 minutes when Hume found Moore out wide for the full-back to score his second try after a sustained Ulster attack that was temporarily halted by Earls' perfectly-timed challenge on Moore.
While Cooney misjudged his conversion attempt, Moore's second try gave Ulster a commanding 12-point cushion at the break which they extended within three minutes of the restart with Hume at the heart once again.
Having received a pass from his midfield partner Stuart McCloskey, Hume drove forward and slipped the ball to Timoney for the flanker to run the ball home.
Ulster nearly squandered a 17-point lead in their last home game against the Sharks and they survived a scare just two minutes after Timoney's score when Coombes' try was ruled out after he knocked the ball on with his forearm before grounding it.
Earls did score for the visitors on 54 but that was soon followed by Hume's try as the centre capped a stunning performance in which he seemed to be at the heart of every Ulster move.
Earls grabbed his second with 10 minutes remaining but it was scant consolation as Munster were left to reflect on a sub-par performance while Ulster basked in redemption after losing home and away to their inter-provincial rivals earlier in the campaign.
Ulster: S Moore, R Baloucoune, J Hume, S McCloskey, E McIlroy, B Burns, J Cooney; A Warwick, R Herring, T O'Toole, A O'Connor, I Henderson (capt), M Rea, N Timoney, D Vermeulen.
Replacements: J Andrew, E O'Sullivan, G Milasinovich, K Treadwell, M Rea, N Doak, I Madigan, B Moxham.
Munster: M Haley; A Conway, C Farrell, D de Allende, K Earls; J Carbery, C Murray; J Wycherley, N Scannell, S Archer; J Kleyn, F Wycherley, P O'Mahony (capt), A Kendellen, G Coombes.
Replacements: D Barron, J Loughman, J Ryan, J Jenkins, T Ahern, C Casey, B Healy, C Cloete.