Nigel Davies’ men had lost their last ten matches against Irish sides but tries from Liam Williams and Adam Warren saw them home.
In poor conditions in south Wales, Ulster opened the scoring with a penalty fron Ian Humphries after nine minutes.
His opposite number Aled Thomas replied with two of his own to push the Scarlets into the lead. Then on the stroke of half-time Williams touched down for the game’s first try to take the hosts into the break 13 v 3 up.
Wales hooker Matthew Rees came off the bench at the start of the second half after returning from neck surgery to the delight of the home support.
Humphries and Thomas then exchanged further penalties, before Humphries slotted his second to take the scores to 16 v 9.
Andrew Trimble then grabbed a try for Ulster to narrow the scores but Warren’s try sealed the victory for the Scarlets.
Humphries kicked a late penalty to ensure the visitors left with a bonus point.