Munster set up an Aviva Stadium showdown with Scarlets in the Pro12 final after a clinical dismantling of the Ospreys at Thomond Park.
Frances Saili, named man of the match in his final appearance at Thomond Park, darted over for the opening try in the 26th minute to help his side to an 8-3 half-time lead.
Simon Zebo finished off a brilliant counter-attack just after the hour and Andrew Conway sealed it late on as the hosts uncompromising defence eventually ground down the spirited visitors.
They'll face Scarlets, conquerors of Leinster on Friday night, in Dublin next weekend depserate to end an empotional campaign on a high.
Departing centre Saili signed off at the province's Limerick fortress with a magnificent display.
A well-taken 25th-minute try from Saili, whose release by Munster at the end of the season was confirmed on Friday, saw the home side leading 8-3, with Dan Biggar and Tyler Bleyendaal kicking a penalty each.
Driven on by captain Alun Wyn Jones, who made a welcome return from a shoulder injury, the Welshmen began to wilt after Zebo took his Munster record to 53 tries on the hour mark.
Bleyendaal converted and also added a penalty with 14 minutes remaining, before Andrew Conway crossed for a classy 74th-minute try as Munster moved within reach of their first PRO12 crown since 2011.
The eagerly-awaited duel between Lions scrum-halves Conor Murray and Rhys Webb was shelved as the latter was withdrawn before kick-off with a groin injury that was not expected to keep him out of the final - should Ospreys have got there.
Webb's replacement Brendon Leonard had an inauspicious start, being blocked down by Murray and then knocking on at a lineout. But Ospreys had the first points on the board when Biggar slotted over a seventh-minute penalty.
Although the visitors dominated possession for much of the opening 40 minutes, Munster held them at arm's length with some well-organised and steely defence.
New Zealander Saili was Munster's liveliest runner and his efforts were rewarded with an opportunist try.
A monster maul ignited the hosts' attack and Rory Scannell did really well to keep the ball in play, close to the left touchline, before his centre partner Saili reacted quickest to pick up and cross from a few metres out.
Bleyendaal could not convert and although Biggar was also off target from a 31st-minute penalty, Ospreys skipper Jones continued to wield plenty of influence up front.
Munster began to get the edge at scrum time, particularly on Dave Kilcoyne's loosehead side, and a furious late assault on the Ospreys line, which saw Zebo held up short, ended with Bleyendaal's right boot putting them five points up at half-time.
Ospreys opened the second period with a snappy break from prop Nicky Smith, Munster hooker Niall Scannell soon returning the favour before Keith Earls was bundled into touch just a few metres out.
Ashley Beck and Dan Evans increased their influence with ball in hand as the Ospreys backs threatened as the hour approached, however the pack was soon pinged for obstruction at a maul.
After a CJ Stander effort was ruled inconclusive by TMO Graham Hughes, Munster somehow turned a Justin Tipuric hack downfield into a thrilling 60th-minute score, Earls and Saili setting up a breathless counter-attack that ended with Zebo grounding to the left of the posts.
Bleyendaal's conversion put 12 points between the sides and his 66th-minute penalty was a further blow to Ospreys, whose replacement hooker Scott Otten was unfortunate to have a cracking chip-and-chase try ruled out for a prior knock-on by Tom Habberfield.
Fittingly, the Munstermen closed out the scoring with a third try of the evening, moving the ball wide from their rock-solid scrum to set up winger Conway who showed great feet and finishing skills to make the line.
Saili ensured a try shut-out for the hosts, showing great speed to deny Keelan Giles a last-minute consolation score.
Munster: Simon Zebo; Andrew Conway, Francis Saili, Rory Scannell, Keith Earls; Tyler Bleyendaal, Conor Murray; Dave Kilcoyne, Niall Scannell, John Ryan, Donnacha Ryan, Billy Holland, Peter O'Mahony (capt), Tommy O'Donnell, CJ Stander.
Replacements: Rhys Marshall, James Cronin, Stephen Archer, Jean Deysel, Jack O'Donoghue, Duncan Williams, Ian Keatley, Jaco Taute.
Ospreys: Dan Evans; Keelan Giles, Kieron Fonotia, Ashley Beck, Tom Habberfield; Dan Biggar, Brendon Leonard; Nicky Smith, Scott Baldwin, Rhodri Jones, Bradley Davies, Alun Wyn Jones (capt), Sam Underhill, Justin Tipuric, James King.
Replacements: Scott Otten, Paul James, Dan Suter, Lloyd Ashley, Olly Cracknell, Jay Baker, Sam Davies, Josh Matavesi.
Referee: Luke Pearce (RFU)