Utah has won four straight games against USC.

The Utes beat the Trojans twice last season — once in Salt Lake City and then again in the Pac-12 title game to capture the program’s second consecutive conference title.

Saturday night in Los Angeles, Utah played the role of spoiler again for Lincoln Riley and the 18th-ranked Trojans. Utah roared to a 28-14 second-half lead and then survived a rally from USC in the fourth quarter. A pick-six and a huge punt return gave the Trojans all the momentum and eventually a 32-31 lead. But Utah, led by Bryson Barnes, had one last push at the end of the game and drove to set up a walk-off 38-yard field goal from Cole Becker to win 34-32.

The win keeps No. 14 Utah (6-1, 3-1 Pac-12) very much alive in the Pac-12 title discussion this season. And while USC (6-2, 4-1 Pac-12) isn’t yet out of the conference title race, the Trojans’ College Football Playoff hopes are all but dashed with a second loss in as many weeks.

Here are three takeaways from the game.

A Player of the Week kind of performance

Bryson Barnes, man.

What a player. What a teammate. What a career.

All Barnes has been asked to do throughout his time at Utah is fill in. He entered Rose Bowl games when Cameron Rising was knocked out not once, but twice. He served as a stand-in for Rising when he was unavailable last year against Washington State and then again to start the 2023 season. He was benched earlier this season for Nate Johnson and then pushed back onto the field and asked to save an offense that simply couldn’t find anything.

Inside the Coliseum on Saturday, Barnes delivered his gutsiest performance.

Yes, he was intercepted in the fourth quarter and the ensuing return gave USC new life. But Barnes also completed 14 of his 22 pass attempts for 235 yards and three touchdowns. He added 57 rushing yards and another touchdown on the ground.

He hit Sione Vaki on a wheel route — a play he missed last week — for 53 yards to open the scoring. He consistently lowered his shoulder and embraced contact. He consistently fought for extra yardage.

On the Utes’ final drive, he stood in the pocket and took a shot right to the head that drew a roughing the passer penalty and converted a third-and-9. On second-and-15 from the USC 45, Barnes put the team on his shoulders and set up the game-winning field goal with a 26-yard run.

That was a truly special performance from Barnes. Not a perfect game, but a grind-it-out day from a player who has just consistently shown up for Utah regardless of the results.

USC nearly stole it

The Trojans trailed 28-14 late in the third quarter. And when Lincoln Riley sent Denis Lynch out to kick a field goal on a fourth down from the Utah 27 on the final play of the third, fans groaned. A successful kick would have made a two-possession game a… two-possession game.

But Riley took the points and trusted his team would have more opportunities in the fourth.

That faith was rewarded almost immediately when Calen Bullock jumped a third-down pass from Bryson Barnes and took it back for a touchdown.

The two sides then exchanged field goal drives to keep the margin at five as the clock ticked under three minutes to play.

USC forced a three-and-out and then freshman receiver Zachariah Branch uncorked a 61-yard punt return to set USC up inside Utah’s 15-yard-line.

Caleb Williams walked into the endzone on the very next play and pushed USC ahead 32-31.

This has been a game that was decided on the margins in recent years. It was a one-point game in Salt Lake City a year ago. Fitting that it was another nail-biter in Los Angeles.

Lincoln Riley has abandoned the run game

MarShawn Lloyd averaged 12.3 yards per carry. He didn’t record a single rushing attempt in the second quarter, carried the ball twice in the third quarter, and didn’t touch the football in the fourth quarter.

Austin Jones averaged 6.2 yards a carry. He had just five touches.

When a Lincoln Riley offense has been at its best, the ground game has been humming. The Air Raid system tends to lead people to believe Riley won’t run the football; the exact opposite has been the case for Riley as a play-caller.

So it’s remarkable to see this USC team just completely abandon the run game. The Trojans called 14 designed run plays. Caleb Williams threw it 34 times, scrambled five times, and was sacked four times. On 27 first-down plays, USC ran on only 11 of them.

It’s not really a mystery why USC has been sputtering on offense in recent weeks. The Trojans either haven’t been able to or haven’t had any interest in running the football.

USC scored touchdowns on its first two drives of the game, possessions that net 139 yards in just 13 plays. On the next six drives, USC gained 100 total yards on 26 plays.

The Trojans are making it harder on themselves than necessary.

Bonus: Vaki does it again!

Sione Vaki is just absurd. His “lay the wood” mentality as a safety translates beautifully to the role Utah is giving him on offense. He’s deceptively quick and then just runs over would-be tacklers.

A week after rushing for 158 yards on 15 carries, Vaki outdid himself. He caught five passes for 149 yards and two touchdowns. And he ran the ball nine times for another 68 yards.

As Utah built its early lead, no one was more integral than Vaki.