The Scarlets took their first win over Munster in 16 attempts as they gained control in the second half of the Pro12 clash at a wet and windy Musgrave Park.
Ian Keatley's penalty was cancelled out by Aled Thomas' reply to leave the scores level at the break.
As the Scarlets played the conditions better, Thomas kicked them ahead on 65.
Felix Jones' fumble gifted the crucial late try to Andy Fenby although replacement JJ Hanrahan's penalty did earn Munster a losers' bonus point.
The Scarlets went into the game without a win against Munster since 2007 and having not defeated the Irish province at the Cork venue in seven attempts.
Munster produced all the early pressure with Felix Jones' chip and chase forcing Gareth Davies to concede a five-metre scrum in the third minute.
However, Ian Nagle's knock-on ended Munster's initial flurry of pressure as the Scarlets defence held firm.
The dreadful conditions in Cork made both handling and kicking extremely difficult.
Thomas looked to have kicked the Scarlets into the lead on 19 minutes after Niall Ronan's infringement at the breakdown only for the wind to blow the penalty just wide.
At the other end of the field, Keatley was on target four minutes later as his drilled kick sailed between the posts from just outside the 22.
But the Scarlets were on terms by the 29th minute as Thomas slotted from in front of the posts after Duncan Williams' deliberate knock-on following a period of pressure by the visitors.
The injury-plagued Ronan had to be stretchered off before the break after a sickening clash of heads following Jake Ball's charge into a ruck.
Former South Africa Under-20 captain CJ Stander came on as a replacement and the Springbok was close to notching the game's first try in injury-time before being held up following a Munster drive.
As the rain really started to lash down, the Scarlets produced the initial pressure after the break.
Thomas missed a normally straightforward chance to put the Scarlets ahead as the conditions continued to deteriorate and was then off-target with the drop goal attempt.
Munster threatened a breakaway try in the 63rd minute after a break by full-back Jones but the latest in a series of scrum infringements by the home front row averted the danger for the Scarlets.
Yet another scrum transgression gifted a penalty chance to Thomas two minutes later which the fly-half accepted with the help of a post.
The contest turned decisively in the Scarlets' favour on 69 minutes as wing Fenby pounced to score when a backpedalling Jones was unable to gather the skidding and slippery ball near his own line after Luke O'Dea had spilled possession in midfield.
Thomas slotted the conversion to leave more than a score between the teams and effectively kill off Munster's hopes.
The home side did earn a penalty in injury-time and Hanrahan's successful kick yielded the consolation of a losers' point for the deflated home side.
Munster: F Jones; D Howlett capt, C Laulala, J Downey, L O'Dea; I Keatley (JJ Hanrahan 73), D Williams (P Stringer 74); W du Preez (Horan 76), M Sherry (D Varley 64), S Archer (BJ Botha 44); I Nagle (D Foley 73), B Holland; Dave O'Callaghan, N Ronan (CJ Stander 36), P Butler.
Unused Replacement : D Hurley
Scarlets: M Stoddart (D Newtown 58); N Reynolds, G Maule, G Owen (A Warren 78), A Fenby; A Thomas, G Davies (R Williams 77); P John (S Hopkins 75), E Phillips (K Myhill 77), J Adriaanse (S Lee 54), J Ball, R Kelly, G Earle (J Snyman 63), J Edwards (capt) (D Thomas 45), C Price.
Referee: Laurent Cardona (FFR)