The Saints suffered an early blow when prop Chris Budgen was sin-binned for raking the head of Scarlets captain Simon Easterby, and Gareth Bowen opened the scoring with a penalty goal. Grayson returned the favour with two well-struck goals to give the visitors the lead, but it didn't last long as Bowen levelled the scores in the 20th minute.
The Scarlets bagged the first try of the match through backrower Gavin Thomas after some good work from scrum-half Dwayne Peel, and Bowen added a third penalty goal to stretch his side's lead to 14-6.
Grayson kicked a third goal from point-blank range and added a fourth from wide out to close the gap to 14-12 at halftime. Some clever work from Bowen set up a fourth penalty goal for the little fly-half after the break, and he added a fifth as the Scarlets stretched their lead to a crucial eight points.
Grayson kept his side in touch with yet another goal, before a wonderful Saints try that turned the match on its head. Thompson joined the backline at outside centre and made fools of three Scarlets defenders as he jinked and sprinted over the try-line under the posts. Grayson's conversion gave the visitors a 22-20 lead in the dying minutes and silenced the Stradey Park crowd.