Kristian Phillips' spectacular solo try helped the Scarlets secure their first win since November away at Racing Metro in the Heineken Cup.
The winger skipped his way through the French club's defence to score with just 19 minutes to go.
Wales scrum-half Mike Phillips had given Racing the lead against his former side, diving over from close range after just eight minutes.
The win keeps the Scarlets' slim hopes of progressing alive.
Scarlets started strongly taking the lead through a Rhys Priestland penalty after just three minutes.
Racing's big and powerful pack provided the platform for Lions half-backs Phillips and Jonny Sexton to release the back-line early on.
Winger Juan Imhoff was a constant threat as the French side spread the ball wide.
Eight minutes in, the Argentina international cut through the Scarlets defence from an attacking line-out and Phillips dived over from a ruck close to the line, with Sexton adding the conversion.
Five minutes later Racing went close again, their forwards driving hooker Virgile Lacombe over, but the TMO could not see if the ball had been grounded.
This resulted in a series of dominant scrums for the hosts from which they eventually forced a penalty five metres out.
The French club opted for another set-piece but the Scarlets pack fought back driving the scrum back to win a penalty.
They then mounted an attack from their own half and could have scored had winger Frazier Climo managed to pick up his kick and chase inside the Racing 22.
A long-range attack less than 10 minutes later also saw the winger threaten.
Racing lost the ball in a promising attacking position deep inside Scarlets territory and Climo was tackled into touch just metres short of the line, following strong running by full-back Aled Thomas.
Priestland and Sexton exchanged penalties towards the end of the first half, the French side taking a 10-6 lead into the interval.
Two minutes after the break Climo spurned the Scarlets' best opportunity of the match so far, knocking-on five metres out with the line at his mercy, following Preistland's grubber kick.
A Priestland penalty then brought the Scarlets to within one point of their French hosts.
On 50 minutes a breathtaking passage of attacking rugby could have resulted in tries for both sides.
Racing threatened the Scarlets line with a break-away attack only for Aled Thomas to intercept Sexton's pass on his own 22.
Priestland's cross-field kick looked to have set up a certain score, only for the ball to bounce awkwardly away from the Scarlets attackers.
Minutes later another Priestland penalty gave Scarlets the lead.
Racing pressed and fought back, retaking the lead with 20 minutes remaining through the boot of Juan Martin Hernandez.
Shortly after the restart came the breakthrough the Welsh region had been looking for.
Scarlets winger Kristian Phillips gathered a high ball just inside the Racing half, before dancing through the French side's defence at pace to score.
Priestland added the conversion.
The French side pressed opting to kick for touch when awarded kickable penalties.
With just 12 minutes left the tactic nearly paid off but Imhoff failed to gather Sexton's cross-field kick.
The Scarlets continued to defend and attack right to the end to secure a gutsy win.
Racing Metro 92: Benjamin Fall; Juan Imhoff, Henry Chavancy, Juan Martin Hernandez, Marc Andreu; Jonny Sexton, Mike Phillips; Julien Brugnaut, Virgile Lacombe, Brian Mujati, Karim Ghezal, Fabrice Metz, Antoine Battut (capt), Dan Lydiate, Jacques Cronje.
Replacements: Jeremie Maurouard; Soane Tonga'uiha, Luc Ducalcon, Juandre Kruger, Camille Gerondeau, Maxime Machenaud, Benjamin Dambielle, Alexandre Dumoulin.
Scarlets: Aled Thomas; Kristian Phillips, Nick Reynolds, Scott Williams, Frazier Climo; Rhys Priestland, Gareth Davies; Phil John, Emyr Phillips, Samson Lee, Jake Ball, Johan Snyman, Aaron Shingler, Rob McCusker, John Barclay.
Replacements: Kirby Myhill, Rob Evans, Jacobie Adriaanse, Richard Kelly, Josh Turnbull, Rhodri Williams, Gareth Maule, Jordan Williams.
Referee: Luke Pearce (England)