Michigan State kicker Michael Geiger had to be feeling the pressure as he took the field to attempt a game-winning 40-yard field goal against Ohio State.

Geiger had missed a 43-yarder earlier that day and if he made this kick, he would give Michigan State a win that would inch them closer to the College Football Playoff, and almost certainly knock the #3 Ohio State Buckeyes out of contention.

Geiger’s nervousness didn’t show though, as he boomed the kick through the uprights to give Michigan State a 17-14 victory, snapping Ohio State's 23-game win streak.

Michigan State’s defense stepped up in the contest, allowing just 132 yards of offense and five first downs to the Buckeyes. They allowed their offense to control the clock; the Spartans ate up just over 38 minutes of clock time.

Tyler O’Conner threw for a mere 89 yards but he came up clutch several times, as did running backs Gerald Holmes and L.J. Scott who combined for 123 rushing yards.

J.T. Barrett threw for just 49 yards and rushed for 44 more for the Buckeyes. Ezekiel Elliott ran for just 32 yards, breaking his string of 15 straight 100-yard performances.

The first half was largely an uneventful one. Neither team moved the ball well with Michigan State gaining 125 first-half yards, 75 of which came in their lone scoring drive, while the Buckeyes managed a mere 75 offensive yards. It was the first time Ohio State was held at 75 yards or below in a half since 2007.

The teams traded punts to begin the game, with Ohio State not gaining a first down. The Buckeyes punted on their second possession as well, after gaining one fresh set of downs. However, after forcing a fumble, Ohio State took advantage of good field position, as they took over at the Michigan State 32-yard line. The 32 yards were hard-earned as the Buckeyes needed 10 plays and a fourth down touchdown plunge to put seven on the board. Ezekiel Elliott barreled in from 1 yard out to give Ohio State the 7-0 lead.

Michigan State immediately responded with a 9-play, 75 yard drive. The Spartans had to do it the hard way though, converting two long third downs. Facing a third and nine from their own 26 yard line, Tyler O’Connor, playing in place of an injured Connor Cook, completed a 14-yard pass to Aaron Burbridge for the first down. Just a few plays later, the Spartans faced a 3rd and 14 from their 36-yard line, but O’Connor came through again, this time with a 36-yard completion to Burbridge. Running back Gerald Holmes gained sixteen yards on two consecutive carries before O’Connor finished the drive with a 12-yard touchdown pass to Trevor Pendleton. Michigan State had a golden opportunity to take a lead late in the first half when Ohio State shanked a punt and it was downed at their own 23 yard line. However, Ohio State stuffed a first down run for a loss of four yards. Michigan State was penalized for a false start and then threw an incompletion which put them at a 3rd and 19. O’Connor completed a 7-yard pass but the Spartans missed the 42 yard field goal attempt. Neither team gained a first down over the remainder of the half. Michigan State gained just 7 first downs in the first half while the Buckeyes managed just three.

The Buckeyes took advantage of more great field position in the second half. After the Spartans forced a punt on Ohio State’s second possession of the half, Michigan State fumbled away the punt and the Buckeyes took over at the Spartans’ 6-yard line. Barrett tossed a touchdown pass on the next play and Ohio State led 14-7, despite having only accumulated 105 yards of offense.

Michigan State responded again, this time with a 13-play 75 yard drive, requiring a fourth-down conversion. Facing a 4th & 8 at the Ohio State 35, Michigan State enticed Ohio State’s Joey Bosa to jump offsides, making it a fourth down and three. O’Connor scrambled for 11 yards on the next play, and later ran for five more yards on a 3rd & 3. Gerald Holmes punched the ball in from two yards out to knot the game at 14.

The teams traded punts and Michigan State’s punt pinned the Buckeyes on their own 7-yard line. They gained four yards in three plays and punted but the Spartans took over at the Ohio State 48 yard line with just over four minutes remaining in the game.

Michigan State drove down the field, converting two third downs along the way. L.J. Scott did some hard running for the Spartans as they attempted to get into field goal position. Scott did his part, getting Michigan State to the Ohio State 23 yard line to set up Geiger’s heroics.

The win almost clinches Michigan State’s berth in the Big 10 title game against Iowa. Both the Spartans and the Buckeyes are 6-1 in conference play. However, since the Spartans own the tiebreaker, they just have to beat Penn State to clinch while Ohio State has to beat Michigan and hope the Spartans lose to the Nittany Lions.