Scarlets earned a Pro12 bonus-point win as they survived Treviso's fight-back.
The visitors led 27-12 early in the second half and the hosts fought back to 33-34 before a late Jordan Williams try sealed Scarlets' win.
Kirby Myhill, Frazier Climo - twice - Gareth Davies and Kristian Phillips went over for Simon Easterby's side.
Fly-half Aled Thomas kicked 11 points while Robert Barbieri, Meyer Swanepoel, Ludovico Nitoglia went over for the Treviso.
Victory allowed the visitors to level their overall series against Italy's leading team, who had a 4-3 lead against the west Wales region going into the contest
Amid Six Nations duties for their leading players, neither team was at full strength.
That forced Treviso coach Marius Goosen to call on players from the Padua and Mogliano clubs.
Victory took the Welsh region up a place to sixth in the table, going above Newport Gwent Dragons whose chance to respond this weekend has gone after their game against Edinburgh on Sunday was postponed because of poor Rodney Parade pitch conditions.
Thomas opened the scoring and Mat Berquist levelled before hooker Myhill was driven over from a close-range line-out.
Berquist hit back with a penalty before Climo went over went over for the first of his brace.
Home full-back Berquist added his third first-half penalty as the break beckoned.
Climo went over for his second try, converted by Thomas, two minutes after the restart.
Berquist reminded the visitors of his goal-kicking prowess, but visiting scrum-half Davies then crossed, Thomas again converting.
Replacement Barbieri went over for the hosts' first try on the hour and Berquist converted.
Wing Kristian Phillips added his name to the scoresheet only for Swanepoel to keep Treviso in contention as Berquist added the extras.
And when wing Nitoglia also hit back for the full-back to convert the host were only a point behind with five minutes remaining.
But the final try proved decisive as Scarlets full-back Williams found his way to the line and Thomas again converted.
Treviso: Mat Berquist; Ludovico Nitoglia, Andrea Pratichetti, Alberto Sgarbi, Brendan Williams; Alberto Di Bernardo, Fabio Semenzato; Matteo Muccignat, Franco Sbaraglini, Ignacio Fernandez-Rouyet, Valerio Bernabò (capt), Corniel Van Zyl, Christian Loamanu, Marco Filippucci, Paul Derbyshire.
Replacements: Enrico Ceccato, Giovanni Maistri, Pedro Di Santo, Meyer Swanepoel, Robert Barbieri, Jacopo Sarto, James Ambrosini, Enrico Bacchin.
Scarlets: Jordan Williams; Kristian Phillips, Gareth Maule, Adam Warren, Frazier Climo; Aled Thomas, Gareth Davies; Phil John, Kirby Myhill, Jacobie Adriaanse, George Earle, Richard Kelly, Josh Turnbull, Rob McCusker (capt), John Barclay.
Replacements: Emyr Phillips, Rob Evans, Samson Lee, Johan Snyman, Lewis Rawlins, Aled Davies, Josh Lewis, Gareth Owen
Referee: Lloyd Linton (Wales)
Assistant referees: Claudio Blessano, Stefano Traversi (both Italy)
Citing commissioner: Stefano Marrama (Italy)
TMO: Alan Falzone (Italy)