Silas Redd rushed for 108 yards and a touchdown in the first half and Matt Barkley added an 18-yard TD pass to Xavier Grimble as the Trojans continued rebuilding their resume following last month's loss to Stanford that appeared to end their national championship hopes.
The Trojans (5-1, 3-1 Pac-12) were held scoreless in the second half and got needed help from a defense that sacked Price five times and forced four turnovers to give USC its third straight win.
Barkley finished 10 of 20 for 167 yards, while Redd had 155 yards on 26 carries, his second-best game since transferring from Penn State. Curtis McNeal added another 58 yards on 11 attempts as the Trojans finished with 204 yards on the ground.
The 10 completions for Barkley were his fewest since 2010 at Oregon State when he hit just 10 of 19 passes.
This was USC's first trip north to Seattle since 2009, when the Trojans were upset by the Huskies across town at Husky Stadium in coach Steve Sarkisian's first year of rebuilding at Washington. For most of the first half, it appeared the Trojans would coast and get a little revenge for their last trip here. USC scored on three of its first four drives and went up 17-7, the only stop coming when Barkley was intercepted by Marcus Peters.
Defensively, the Trojans held Washington to 6 total yards in the second quarter and didn't give the Huskies (3-3, 1-2) a first down between the end of the first quarter and midway through the third quarter. Brown then added the capper to a nearly flawless first half. USC was close on two previous punt attempts before Travis Coons went back to kick following a fourth three-and-out with 5 minutes left in the half.
Brown blew through the personal protectors in front of Coons and blocked the kick, then picked up the ball in the scrum and went the final 7 yards to give the Trojans a 24-7 lead.
Price missed his first three passes then hit 15 straight throws at one point as he tried to rally the Huskies. He finished 20 of 28 for 198 yards, with TD tosses for 17 yards to Kasen Williams and 29 yards to Austin Seferian-Jenkins. But after Washington committed five turnovers last week at Oregon, another four against the Trojans - plus the blocked punt - was not what the Huskies needed in the final game of a gauntlet opening stretch that featured LSU, Stanford and Oregon. Down 24-14, Washington was on the cusp of making it a one possession game with a first-and-goal at the USC 6. The Huskies had run the ball on six straight plays and used a third-down completion to fullback Jonathan Amosa for 9 yards to get inside the Trojans 10.
Bishop Sankey gained 3 yards on first down, and on second down, Price rolled from the pocket. As he pump-faked, Starling reached in and stripped the ball loose, then fell on it at the USC 4 after two teammates failed to corral the loose ball with 11:03 left.
It was the second straight drive into USC's end where the Huskies came up empty. Coons badly missed a 45-yard attempt late in the third quarter. USC ran more than 5 minutes off the clock and reached the Washington 27 before Barkley was sacked on fourth-and-5 by Josh Shirley giving the Huskies the ball back down 10 with 5:26 remaining. The Huskies hopes didn't last long.
Price was engulfed and sacked by Wes Horton on first down and on fourth-and-8 from his own 38, Price threw into a crowd where his pass was tipped and intercepted by backup safety Josh Shaw. Price added one more turnover, fumbling on a scramble with 2 minutes left at the USC 39 as Washington tried to make a frantic final drive.