STANFORD, Calif. -- Stanford beat USC for the fourth consecutive time on Saturday, and this one hurt the Trojans and quarterback Matt Barkley a lot more than the previous three.
No. 21 Stanford handed the No. 2 Trojans a 21-14 defeat at Stanford Stadium, severely damaging USC's national champion hopes as well as Barkley's chances of winning the Heisman Trophy.
In the last three Stanford wins over USC, Andrew Luck was the Cardinal's quarterback, and the Cardinal was favored in the last two.
This time, the Trojans (2-1) were the favorites, and Barkley was the experienced Heisman candidate. But Barkley was just 20 of 41 for 254 yards with no touchdowns and two interceptions, and the Trojans were shut out in the second half.
Asked whether he could imagine USC, with all its offensive weapons, being shut out for a half, Barkley said softly, "No."
USC had just 91 yards of offense after halftime. The Cardinal pass defense was its weakness last season and the first two games this year, but the Cardinal limited Barkley to 4-of-9 passing for 43 yards in the fourth quarter. A strong pass rush, which recorded four sacks, was a major factor in the success against Barkley.
"Regardless of what happened tonight, he's still the best quarterback in the nation," Stanford coach Davis Shaw said. "If you give him too much time, he'll kill you."
Besides applying pressure to Barkley, the Cardinal limited the Trojans to 26 yards rushing on 28 attempts, an average of 0.9 yards per carry.
"That's a great front seven," USC's Lane Kiffin said of Stanford's front. "They're better than last year. They could be the best front seven in the country."
Meanwhile, the Cardinal (3-0) proved it can remain a national power without Luck, as quarterback Josh Nunes, making just his third start, was the better quarterback in the second half.
"When you lose one of the best quarterbacks in history, people are going to doubt with good reason whether you can continue to do what you do," said Stanford defensive end Ben Gardner, who had a sack and two tackles for loss.
Nunes' numbers were not great -- 15 of 32 for 215 yards, two touchdowns and two interceptions -- and Shaw admitted he was far from perfect, but in the second half he was 9-for-15 for 137 yards, two scores, no interceptions and two important scrambles for first downs to lead the Cardinal back from a 14-7 halftime deficit.
"I thought he played great tonight," Kiffin said. "He settled down, had those two big runs. He looked like a veteran out there."
Stepfan Taylor rushed for 153 yards for the Cardinal. He scored on a 59-yard run in the first half, and his 23-yard touchdown reception on a screen pass tied the game 14-14 with 10 seconds left in the third quarter.
Stanford took a 21-14 lead with 10:20 left in the fourth quarter when Nunes hit Zach Ertz over the middle for a 37-yard touchdown pass to complete a 79-yard drive.
The Cardinal seemed to be sitting pretty when a fourth-down pass to Marqise Lee was ruled incomplete with a little more than a minute left, but it was overturned on replay, giving the Trojans a first down at their 34.
USC got as far as the Cardinal 46, but a holding call and two sacks ruined the Trojans' final opportunity as Barkley failed to rally the team in the clutch. Unless USC plays Stanford again in the Pac-12 title game, Barkley will finish his college career 0-4 as a starter against Stanford.
USC led 14-7 at the end of the first half, which featured interceptions on three consecutive plays late in the second quarter. Two of the picks were thrown by Barkley.
The Trojans scored first on a 2-yard run by Silas Redd in the first quarter, two plays after a 49-yard pass to Ryan Henderson put the ball at the Cardinal 1-yard line.
Stanford tied it on its next possession, getting two first downs before Taylor ran 59 yards for a score.
The Trojans regained the lead at the 11:19 mark of the second quarter on a 58-yard touchdown drive that included two fourth-down completions by Barkley. The second was a 24-yard completion to Robert Woods on a fourth-and-20 play from the Cardinal 25. But the Trojans went scoreless the rest of the first half and all of the second.
NOTES: USC was without kicker Andre Heiden, who will be out about three weeks after having knee surgery. He had made his only field-goal attempt this season, a 28-yarder. ... USC center Khalid Holmes, who injured his leg last week, was not in the starting lineup Saturday.