Keith Appling scored six of his 15 points in the final 41.5 seconds, lifting the 18th-ranked Michigan State Spartans over the 11th-ranked Ohio State Buckeyes, 59-56.
Adreian Payne added 14 points for the Spartans (16-3, 5-1 Big Ten), who improved to 12-0 at home this season. Branden Dawson had nine points and 10 rebounds.
"I'm very excited about the victory. We needed this win at home and it just felt so good that we were able to get it," Payne said. "Beating Ohio State at home is huge especially because it helps us move up in the rankings. We are going to continue to get better and improve our game. I was on my role on the team and I wanted to bring a lot of energy and play with a lot of passion."
Deshaun Thomas made six 3-pointers en route to 28 points for the Buckeyes (13-4, 3-2), who had a two-game winning streak snapped.
Thomas' 3-pointer with 2:59 to play tied the game at 50. However, Michigan State had the ball following consecutive turnovers by Dawson and Shannon Scott.
Payne's three-point play gave the Spartans a 53-50 edge with 2:05 left. Payne, though, turned the ball over on Michigan State's next possession, which led to Evan Ravenel's 1-of-2 effort from the foul line.
The Spartans turned the ball over again, with Aaron Craft stealing the ball from Appling. Thomas made two free throws to tie the game at 53 with 57.9 seconds remaining.
Appling responded with a layup at the other end to put Michigan State back in front. Thomas and Craft both missed 3-pointers on Ohio State's ensuing possession, leading to Appling's fastbreak slam.
Lenzelle Smith, Jr. kept it interesting with a 3-pointer, but Appling made a pair of foul shots for a 59-56 Michigan State lead.
The Buckeyes were left with 7.9 seconds. Scott threw up a running shot from beyond the arc that was way off the mark. Appling grabbed the defensive rebound as time expired.
"Michigan State knew we were going to go to him (Thomas) and they had locked down on him," Ohio State head coach Thad Matta said. "Obviously, I would have liked to have got it there. Like I said, on that play, you can't start the game the way we started and we had some malfunctions."
Michigan State started the game on a 13-2 run, but the Buckeyes responded with 15 straight points to take the lead.
The Spartans scored the final six points of the first half to take a 30-26 margin into the locker room.
In the early stages of the second half, Thomas and Smith combined to make a trio of 3-pointers. Smith's shot from beyond the arc with 17:45 to play made it 35-34 Ohio State.
With the game tied at 36, the Spartans went on a 10-3 run. Gary Harris tallied four points during the flurry, including a layup with 9:48 left to make it 46-39.
The Buckeyes fired back with a 6-0 spurt to cut the gap to 46-45. It remained close until the final buzzer.
Michigan State owns a 61-52 lead in the all-time series with Ohio State ... The Buckeyes went 10-of-25 from beyond the arc ... Ohio State was fresh off a win over previously unbeaten Michigan, 56-53, at home last Sunday.