The Hawkeyes (17-5, 6-3 Big Ten) led by 21 points just over 12 minutes into the game. They battered the Illini with their bench and Big Ten-best rebounding before Joseph Bertrand and company began to rally.
Illinois (13-9, 2-7) took a 62-61 lead on a 3-pointer by Tracy Abrams with 10:18 left in the game. But Iowa stayed close and took the lead for good at 72-70 on a bucket by Mike Gesell with 3:50 to play.
Bertrand scored 20 points and Rayvonte Rice added 13 for Illinois, which has dropped seven in a row.
The Hawkeyes turned up their defense over the final five minutes. Their three biggest stops came at the end of a 7-0 run that put Illinois in position for an unlikely win.
Rice converted a layup to give Illinois a 66-61 lead with 9:02 to play. But Jon Ekey missed a pair of jump shots and Melsahn Basabe stole the ball from Rice as Illinois faltered on its next three possessions.
The Hawkeyes, meanwhile, were making their shots, including a layup by Olaseni that tied it at 66 with 7:25 left. The way Iowa played early on, it looked as if the Hawkeyes would be able to clear the bench at the end of the game. Iowa bolted to a 34-13 lead. The Hawkeyes had twice as many rebounds as the Illini at that point, and had 14 second-chance points. But with a long 3-pointer from graduate student-transfer Jon Ekey with just over five minutes left in the half, Illinois started chipping away.
A layup from Rice with 2:42 to play cut the Hawkeye' lead to 36-26. Freshman Kendrick Nunn made a pair of free throws with a second left in the half to make it 40-36 at the break.
The Hawkeyes went without a field goal for the final 7:37 of the half, and headed to the locker room looking like a team in need of a break.
Illinois surely would have rather kept playing.