Spencer Petras threw for 186 yards and ran for a touchdown to lead Iowa over Penn State 41-21.
Mekhi Sargent and Tyler Goodson combined for 179 rushing yards and three touchdowns for the Hawkeyes, who won their third straight and snapped a six-game losing streak to Penn State.
The win also gave Iowa head coach Kirk Ferentz his 100th Big Ten win.
Iowa led 31-7 midway through the third quarter before Sean Clifford replaced Will Levis at quarterback for Penn State.
Clifford completed a pair of touchdown passes that cut Iowa’s lead to 10 with just over a quarter left.
The Nittany Lions fell to 0-5 for the first time in their 134-year history.