Michigan State delivered a shocking upset to No. 13 Michigan on Saturday, 27-24.

The Spartans went to Ann Arbor and delivered their first win against the Wolverines since 2017 and only the second win in their last five games.

MARYLAND SHOCKS MINNESOTA 45-44 IN OT ON MISSED CONVERSION

Michigan State quarterback Rocky Lombardi was 17-for-32 with 323 passing yards and three touchdown passes in the game. He had one touchdown pass to Ricky White and two to Connor Heyward. White finished with eight catches for 196 yards and Heyward had two catches for 15 yards.

The Spartans played tough the entire game, keeping Michigan to just 10 points in the first half might have been the difference-makers in the game.

COLLEGE FOOTBALL BOWL SEASON IS TENTATIVELY SET WITH FRISCO BOWL LEADING THINGS OFF

Michigan had more first downs than Michigan State (28-20), had more total yards than Michigan State (452-449) and didn’t turn the ball over. The Wolverines, however, had 10 penalties for 86 yards compared to the Spartans’ five penalties for 65 yards.

Joe Milton was 32-for-51 with 300 passing yards. Blake Corum ran for two touchdowns and Hassan Haskins ran for a touchdown. Haskins punched the ball in for a 2-yard score with 37 seconds left in the game, but the team couldn’t get another possession and lost.

CLICK HERE FOR MORE SPORTS COVERAGE ON FOXNEWS.COM

Mel Tucker picked up his first win as Michigan State’s coach. It’s the second time the Harbaugh-led Wolverines have started the season 1-1.