Denzel Valentine dazzled at just the right time for Michigan State, and Russell Byrd hit a key 3-pointer -- his first since Dec. 17 -- as the Spartans continued their mastery of Iowa on Tuesday night.

No. 7 Michigan State (19-2, 8-1 Big Ten) scored a 71-69 overtime victory, winning for the seventh straight time against Iowa (16-5, 5-3) and snapping the No. 15 Hawkeyes' 20-game home-court win streak in the process.

Iowa had one final gasp at tying the game, but Mike Gesell's runner missed at the buzzer after Keith Appling had missed a pair of free throws that could have sealed the deal with 4.7 seconds left.

Appling led the Spartans with 16 points, but it was Valentine who stole the show with the game in the balance.

Valentine, playing with four fouls, dished an over-the-shoulder, behind-the-head pass to Matt Costello at 1:47 mark of overtime. Costello was fouled and hit his first free throw to give Michigan State a 65-64 lead on what proved to be the pivotal possession of overtime.

Costello missed his second free throw, but Valentine was there for the rebound and passed it back out to Appling for a reset. Appling proceeded to miss on his drive, but Costello followed with a tip to give the Spartans a 67-64 lead with 1:14 remaining.

Iowa fired up a quick 3-pointer that missed, and Michigan State answered with 30 seconds left when Byrd drained a 3-pointer from the corner to give the Spartans a 70-64 lead.

Iowa chipped away, but failed to draw even the remainder of the game.

The Hawkeyes enjoyed a healthy advantage at the free-throw line, sinking 30 of 43 free throws while Michigan State finished 11 of 20.

Regulation time ended in a 61-61 tie, when Roy Devyn Marble's late drive was denied by Gary Harris (nine points) and Appling, and Melsahn Basabe was off with his tip attempt just before the buzzer.

Iowa had led by as many as six points in the second half, scoring its final 11 points in the game on free throws. Michigan State held the Hawkeyes without a field goal the final 9:50 of regulation.

Iowa was up 30-26 at the half despite having a 21-14 advantage on the boards and sinking 12-of-16 free throws through the first 20 minutes while the Spartans were just 4-of-6.

Michigan State jumped to a 10-3 lead on a Travis Trice 3-pointer before Iowa gathered itself with an 8-0 run to take its first lead of the game, 14-13 at the 8:24 mark.

The teams traded the lead twice before the Hawkeyes closed the first half scoring on Marble's drive on Appling.

The Spartans were playing without two injured starters, Adreian Payne (foot) and Branden Dawson (hand).

The Spartans return to action at 3 p.m. Saturday when they play Georgetown at Madison Square Garden.