Rob Penney's side have now won eight in a row and move six points clear of Ulster at the top of the RaboDirect PRO12 table.
Munster played into the brisk wind in the first-half and JJ Hanrahan ,whose place-kicking in the PRO12 has been superb this season, dragged an early penalty wide with the wind possibly playing a part in the miss.
The visitors went in front on 14 minutes when Munster were penalised at the breakdown and Aled Thomas's penalty from near halfway sailed through the posts.
The umbrellas came out shortly after as the rain began to fall but the supporters had reason to cheer on 24 minutes when Hanrahan levelled matters with a penalty from just outside the '22.
Munster had a let-off just short of the half hour when referee Nigel Owens deemed Ivan Dineen to have won the ball back illegally but Thomas's penalty from the right drifted just to the left of the posts.
Corkman Niall Scannell, drafted into the squad late in the day after Damien Varley was ruled out through illness, made his debut as a blood substitute after half an hour for Duncan Casey and the hooker played the remainder of the match as Casey was unable to return.
BJ Botha's 60th Munster appearance ended prematurely when he limped off on 34 minutes with John Ryan replacing the South African.
Scarlets attempted to exert some pressure late in the first half but a knock-on by Rhodri Williams on the '22 gave Munster possession and the half ended all square.
Scarlets re-took the lead with the first try on 42 minutes when they countered after a Hanrahan garryowen through full-back Gareth Owen, Kristian Phillips and captain Rob McCusker.
When McCusker was tackled midway through the Munster half, the ball was recycled quickly and Aled Thomas ghosted through a gap in midfield before popping the ball to John Barclay who touched down under the posts with Thomas adding the extras.
The Munster response was immediate as CJ Stander and Billy Holland combined to release Andrew Conway down the left wing and Conway's clever kick through glanced off the corner flag as it bounced into touch.
The Scarlets line out was successful but the host were soon back in possession and when Jacobie Adriaanse went off his feet Hanrahan stepped up to reduce the gap with a well-struck penalty.
A powerful surge by Dave Kilcoyne brought Munster into the opposition '22 and another infringement at the breakdown allowed Hanrahan reduce the gap to a single point as Rob Penney's side began to build momentum with the game entering the final quarter.
Scarlets introduced Welsh international Rhys Priestland to help close out the game but an Ian Nagle steal in the line-out had Munster back on the front foot.
Another botched Scarlets line-out after Hanrahan's touch finder had the home side within five metres of the Scarlets line but the away side defended well and managed to win back possession.
However, their clearance was gathered by the dependable Dineen and, after the centre was tackled, hands on the ground from the Welsh side gave Hanrahan the opportunity to edge his side in front.
The out-half was narrowly off target however, and it remained 10-9 to Scarlets.
The Welsh side went down to 14 players after 73 minutes when prop Rob Evans was sinbinned for taking a Munster player out in the air at the line-out and they were down to 13 with four minutes left when substitute Mike Poole was shown yellow for a tip-tackle on fellow substitute Barry O'Mahony.
Then came the grandstand finish as strong Scarlets defence kept Munster at bay until substitute Duncan Williams made a superb break before feeding Barry O'Mahony who was dragged down just short of the line.
After the forwards unsuccessfully tried to force their way over, Williams passed to Hanrahan and his perfect crossfield kick was gathered by Ronan O'Mahony and the winger was over in the corner.
To heighten the tension, Owens went to the TMO to check if there was a knock-on in the build-up but, after an agonising wait, the try was awarded and the game was won in dramatic circumstances.
Hanrahan added the conversion to seal a 16-10 win and send the Munster fans home happy.
BJ Botha went off with an injury to his right knee but it doesn't look serious and Duncan Casey, Dave O'Callaghan and Tommy O'Donnell took knocks to the head and will follow IRB return to play protocols.
Munster: Denis Hurley; Gerhard van den Heever (Ronan O'Mahony 57), Casey Laulala, Ivan Dineen, Andrew Conway; JJ Hanrahan, Cathal Sheridan (Duncan Williams 59); Dave Kilcoyne, Duncan Casey (Niall Scannell 30), BJ Botha (John Ryan 34); Ian Nagle, Billy Holland (Capt.); Dave O'Callaghan (Donncha O'Callaghan 48), Tommy O'Donnell (Barry O'Mahony 70), CJ Stander. Replacements: Niall Scannell, Alan Cotter, John Ryan, Donncha O'Callaghan, Barry O'Mahony, Duncan Williams, Johnny Holland, Ronan O'Mahony
Scarlets: Gareth Owen; Liam Williams, Gareth Maule, Adam Warren, Kristian Phillips; Aled Thomas, Rhodri Williams; Rob Evans, Ken Owens, Jacobie Adriaanse; Jake Ball, Richard Kelly; Josh Turnbull, John Barclay, Rob McCusker (Capt.). Replacements: Emyr Phillips, Shaun Hopkins, Rhodri Jones, Johan Snyman, Dan Thomas, Gareth Davies, Rhys Priestland, Mike Poole