INDIANAPOLIS - Michigan State shook up the BCS title chase again Saturday night.
The No. 10 Spartans regained the lead on Connor Cook's 9-yard touchdown pass to Josiah Price with 11:41 left and upset No. 2 Ohio State 34-24 to take the Big Ten title and put Auburn back in the national title hunt.
Ohio State (12-1) had the nation's longest active winning streak end at 24 as coach Urban Meyer suffered his first loss since taking over in Columbus.
It was a game that almost defied logic.
The Spartans (12-1) led 17-0 after 21 minutes, then gave up the next 24 points before scoring the final 17.
Michigan State sealed the victory, and its probable trip to the Rose Bowl, with Jeremy Langford's late 26-yard TD run. The Spartans haven't played in Pasadena since 1988.
Langford ran 24 times for 128 yards, becoming the first player to rush for more than 100 yards against the Buckeyes this season.
Cook finished 24 of 40 for a season-high 304 yards with three TDs and one interception and was selected the game's MVP.
Even before the final seconds ticked off the clock, Michigan State players were bouncing up and down on the field.
Ohio State's Braxton Miller did everything he could, going 8 of 21 for 101 yards with one touchdown and running 21 times for 142 yards and two scores against the nation's stingiest defense. Carlos Hyde ran 18 times for 118 yards. Both joined the school's exclusive 3,000-yard club Saturday, becoming the seventh and eighth members.
Starting right guard Marcus Hall, who Meyer said would not start, did not play. Meyer said he made that decision earlier this week.
But the loss was stinging.
The Buckeyes took their first lead, 24-17, when Miller scored on a 6-yard TD run with 5:36 left in the third.
Michigan State answered when Michael Geiger's 44-yard field goal barely dropped over the crossbar to make it 24-20, and the Spartans retook the lead, 27-24, when Cook capped an eight-play, 90-yard drive by finding Price wide open in the flat for a 12-yard TD pass with 11:41 left in the game.