Jake Rudock threw for 239 yards and a pair of touchdown passes and Iowa rallied from 14 down to beat Michigan 24-21 Saturday.
A fumble recovery by Anthony Hitchens with 2:12 left sealed it for the Hawkeyes (7-4, 4-3 Big Ten), who also clinched a winning season after going 4-8 in 2012.
Michigan used a pair of Rudock interceptions to race out to a 21-7 halftime lead. But the Hawkeyes held the Wolverines (7-4, 3-4) to just 45 yards in the second half and jumped ahead on a 34-yard field goal by Mike Meyer with 6:02 left.
Devin Gardner drove Michigan to Iowa's 31 before he was stripped by Hitchens. He finished with 98 yards passing and two TDs.
Rudock also threw three interceptions, but he was bailed out by a spectacular effort from Iowa's defense.
Mark Weisman added 88 yards rushing and a touchdown for Iowa, which has won three straight at home over Michigan.
But after 30 minutes, it didn't feel like the Hawkeyes were even close to a victory.
The Hawkeyes desperately needed a spark after a rough first half -- and Tevaun Smith gave it to them with a brilliant 55-yard touchdown catch.
Smith beat four defenders after grabbing a short slant to pull Iowa within 21-14 with 13:35 left in the third quarter.
Rudock threw his third pick later in the quarter, snuffing out a potential scoring drive. But the Hawkeyes eventually tied it up at 21 when Weisman followed up a successful fourth-down conversion by running through Raymon Taylor for a 9-yard TD with 12:11 left.
Iowa's defense kept Michigan from putting together any sort of rally. Meyer's field goal, which was into a stiff wind, wound up being the game winner.
It was believed to be the coldest start in the 84-year history of Kinnick Stadium, with a temperature of 18 degrees and a wind chill near zero. The frigid conditions were in stark contrast to the Aug. 31 opener, when the university set up cooling stations because of a heat index that approached triple digits.
Michigan coach Brady Hoke did his best to help his players ignore the cold, defiantly wearing a short-sleeved polo over a long-sleeve t-shirt.
The Wolverines didn't seem to be bothered by the weather early, as Brennen Beyer intercepted Rudock and returned it seven yards for a touchdown on Iowa's first play from scrimmage.
Rudock tied at 7-all with a 5-yard TD pass to C.J. Fiedorowicz. But he also threw another terrible pick early in the second quarter to give Michigan the ball at the Iowa 28, and Gardner found A.J. Williams for a 2-yard TD pass and give the Wolverines a 14-7 lead.
Michigan didn't even score a touchdown in regulation of last week's 27-19 triple-OT win over Northwestern. The Wolverines had three by halftime on Saturday -- despite gaining just 113 yards -- as Gardner hit Jeremy Gallon for a 9-yard touchdown pass.
Iowa capped a sloppy half by botching the snap on a 36-yard field goal attempt.
But Smith and the Hawkeyes defense kept Iowa in the game long enough to push past the Wolverines, who eventually committed the game-deciding turnover.