Larson deftly held off a charging Kevin Harvick to win his first All-Star Race at Charlotte Motor Speedway, his first Cup Series win of any kind this season.
It’s been a tough year for Larson, who is 15th in the series standings entering next weekend’s Coca-Cola 600 and has just one top-five finish in 12 starts.
Kyle Busch finished third, Joey Logano was fourth and Bubba Wallace completed the top-five.
Following the finish, Clint Bowyer confronted Ryan Newman in his No. 6 Ford and threw several punches before Newman got out of his car and the two continued in a verbal tirade.
Ryan Blaney was penalized for driving through too many pit boxes and Aric Almirola had too many crew members over the wall during his stop.
Two laps into the final segment, Denny Hamlin wrecked and also collected Austin Dillon to bring out a caution.
When the race returned to green with 13 laps to go, Kyle Busch led the way followed by Elliott. On the restart, Larson went three-wide on the backstretch and got a big push from Harvick to take the lead for the first time in the race.
With 12 to go, Jones slammed the Turn 4 wall to bring out another caution. Logano, Blaney and Almirola all pit for new tires before the race returned to green with Larson in the lead.
With laps remaining, Harvick moved into the runner-up position trying to get in position to attack Larson.
With five laps to go, Harvick was catching the rear bumper of Larson’s car.