After spending most of the first half trailing Utah, USC quarterback Matt Barkley took things into his own hands, leading the Trojans to 28 straight points to pull out the victory.

No. 13 USC was looking to avoid dropping in the Top 25 rankings for the second week in a row and did so in explosive fashion, beating Utah 38-28 on Thursday night in Salt Lake City.

Barkley was stellar for the Trojans, throwing for three touchdowns and 303 yards, including the go-ahead touchdown to Robert Woods to take a 24-21 lead in the second half. He only missed on seven of his 30 pass attempts and averaged 10 yards per throw.

"That was a real low point to give the other team 14 points to start the game, but our team bounced back," said Barkley to the Associated Press. "We didn't let that ruin our night."

USC was playing in Utah for the first time in over 90 years and didn't get rattled after falling behind early.

"We wanted to come out fast and we did that," said Utah wide receiver Kenneth Scott. "Now we just have to finish."

Utah took an early lead after scoring only 47 seconds into the game off of a fumble return by Nate Fakahafua. The Utes forced another turnover on the next drive forcing center Khaled Holmes to fumble on a bad snap and turned it into another quick score.

Quarterback Jon Hays threw an 11-yard touchdown to Kenneth Scott to put the Utes up 14-0 in the first quarter.

"I felt we did a lot better job as a staff today handling negative plays than we did the last time on the road," USC head coach Lane Kiffin said.

Running back Silas Redd cut the lead after scoring a three-yard touchdown and the Trojans added a field goal to make it 14-10 in the second quarter, But Hays was able to connect with DeVonte Christopher for an 18-yard touchdown to answer the Trojans, pushing the lead to 21-10. That was when Barkley and USC took over.

"I think we did a very good job of that, not panicking, staying with the run game even though we were down," said Kiffin. Much like last year, after our first bad road trip, we started playing a lot better, so hopefully that's the case."

The team scored 28 unanswered points, including an 83-yard touchdown pass from Barkley to Marqise Lee to go up 31-21 with 12 minutes left in the game. Lee was stellar for the Trojans, catching 12 balls for 192 yards and a touchdown. Robert Woods added six receptions for 69 yards.

"Those are unselfish guys," Kiffin said.

One of the big turning points for the Trojans was a fourth quarter interception by cornerback Nickell Robey. Leading 31-21, the Trojans were working to hold Utah from getting back in the game when Robey picked off a pass by Hays and returned it for a score.

"The D-line disrupted the play," Robey said of a pass Hays overthrew. "I read it. I just broke on the ball and stepped in and caught it."

Utah added a rushing touchdown with under a minute left in the game, but it wasn't nearly enough.

Barkley has faded from the Heisman trophy race after a couple subpar starts, but firmly planted himself back in the conversation after Thursday's performance. The Trojans could have given up after letting Utah score 14 points in the first two minutes on turnovers, but stuck to their game plan and eventually made a comeback.

USC improved to 2-1 in the Pac-12 and will play the Washington Huskies on the road next week.