The Scarlets moved above Ulster in the PRO12 standings after beating their hosts 21-20 at the Kingspan Stadium on Sunday.
A brace of tries from fullback Michael Collins led the way for the Scarlets in a thrilling performance, full of ambition and running rugby.
Just as crucial was the kicking of fly-half Aled Jones who chipped in with three penalties and a conversion.
Ulster went in fractionally ahead at the interval thanks to a pulsating Craig Gilroy try, despite the fact that the Welsh visitors had played all the rugby in the first half.
When Luke Marshall went over for Ulster’s second try, the hosts were in an excellent position to kick on and get the victory.
The Scarlets held on, though, with a textbook defensive performance in the second period that was every bit as impressive as the fluent rugby played in the first half.
There wasn’t much in it at the end, but the Scarlets held on for the win they undoubtedly deserved. The losing bonus point will be scant consolation, moreover, for this ambitious Ulster side.
The Welsh club made the perfect start on 4 minutes. Darren Cave missed a tackle on Scarlets’ skipper Hadleigh Parkes who breached the defensive line and sent fullback Collins over in the corner.
Thomas missed the conversion to leave the Welsh side 5-0 ahead. The Scarlets dominated the opening quarter, playing an enterprising brand of rugby that was very pleasing on the eye. A Thomas penalty increased the lead to 8-0 on 14 minutes after Ricky Lutton was penalised for failing to roll away.
Ulster needed to hit back, therefore, and got on the scoresheet on 17 minutes when Jackson struck a sweet drop goal with Ian Davies playing advantage.
And the hosts stormed back into the contest on 20 minutes with a quite wonderful individual try.
Irish winger Gilroy took the ball in his own 22 and with much still to do; he chipped Collins before gathering the ball and sprinting over. Jackson converted to give Ulster a flattering 10-8 lead.
The Scarlets responded in the best possible way. The Welshmen regathered and established good field position in the Ulster 22. Once there, Thomas spun it wide and some slick handling saw Collins go over for his second try. Thomas converted to make it 15-10.
Ulster, in turn, came back well. The Irishmen pounded away at the Scarlets’ defence, but the Welsh club proved resilient. The hosts went through multiple phases to no avail, but the pressure eventually told.
On 36 minutes, Luke Marshall made a break down the right touchline and couldn’t be caught. Although the Irish centre touched down successfully, he was extremely close to touch and the decision was referred upstairs. Alan Rogan deemed the try okay and Jackson converted to give Ulster a 17-15 lead. It wasn’t over yet, though. Thomas had a penalty attempt to regain the lead on 40 minutes but his kick hit the woodwork to end an absorbing half.
Thomas atoned for that miss at the start of the second half when he slotted a 46 minute penalty to make it 18-17. It got worse for Ulster on 49 minutes when Thomas nailed another penalty after Chris Henry was pinged for slowing ball at the breakdown. The Ulster open side was sent to the bin for his trouble.
Ulster regrouped well thereafter, bolstered by the introduction of Ruan Pienaar. Having spurned several three pointers, skipper Jackson did the sensible thing on 63 minutes and kicked for goal to reduce the Scarlets’ lead to a single point.
The hosts chased the game in the next few minutes, but their quest was undermined by a series of basic errors. The Irish province was guilty of chasing the game too much and seemed to panic a little.
That said, the Scarlets’ defence was quite superb; full of commitment and organisation. Ulster’s effort never waned, but it wasn’t enough in the held as the Scarlets held on for the win.
Tries: Gilroy, Marshall
Cons: Jackson 2
Yellow card: Henry
Tries: Collins 2
Pens: Thomas 3
Ulster: 15 Stuart Olding, 14 Craig Gilroy, 13 Darren Cave, 12 Luke Marshall, 11 Jacob Stockdale, 10 Paddy Jackson (c), 9 Paul Marshall, 8 Roger Wilson, 7 Chris Henry, 6 Robbie Diack, 5 Franco van der Merwe, 4 Alan O'Connor, 3 Ricky Lutton, 2 John Andrew, 1 Andrew Warwick
Replacements: 16 Johnny Murphy, 17 Kyle McCall, 18 Bronson Ross, 19 Pete Browne, 20 Clive Ross, 21 Ruan Pienaar, 22 Ian Humphreys, 23 Sammy Arnold.
Scarlets: 15 Michael Collins, 14 Gareth Owen, 13 Regan King, 12 Hadleigh Parkes (c), 11 DTH van der Merwe, 10 Aled Thomas, 9 Aled Davies, 8 Morgan Allen, 7 Will Boyde, 6 Aaron Shingler, 5 David Bulbring, 4 George Earle, 3 Peter Edwards, 2 Kirby Myhill, 1 Phil John
Replacements: 16 Ryan Elias, 17 Dylan Evans, 18 Rhodri Jones, 19 Maselino Paulino, 20 Rory Pitman, 21 Rhodri Williams, 22 Dan Jones, 23 Steffan Evans
Referee: Ian Davies (Wales)
Assistant Referees: Nigel Correll (Ireland), John Carvill (Ireland)
TMO: Alan Rogan (Ireland)