Minnesota (4-1) was off to its best start since 2008, but couldn't get anything going on offense Saturday. Max Shortell threw three interceptions and the Gophers managed only 75 yards in the first half. The Hawkeyes scored three touchdowns during a six-minute span of the second quarter to jump out to a 24-0 halftime lead.
Weisman punched in an 8-yard run on the first play of the quarter.
Then the Gophers went three-and-out, and Iowa's normally conventional offense pulled a surprise with a flea-flicker on the first play of the drive. Weisman pitched the ball back to James Vandenberg, and the senior quarterback found a wide-open Jordan Cotton for a 47-yard score.
Minnesota was forced to punt again and Micah Hyde's 27-yard punt return gave Iowa the ball at midfield. Six plays later, Vandenberg's 1-yard dive into the end zone finished off the drive.
Weisman only carried five times in the second half.
Weisman, a fullback-turned-tailback, was inserted into Iowa's starting lineup because of injuries, and the walk-on has responded with 507 yards and seven touchdowns the last three games.
Minnesota won the previous two meetings with Iowa, rallying from behind in both games to win the rivalry trophy. The Gophers couldn't muster a comeback this time.
Minnesota lost a fumble to open the second half. Shortell responded with a 79-yard drive that ended in a 9-yard touchdown pass to Isaac Fruechte, cutting the Hawkeyes' lead to 24-7 midway through the third quarter.
The Gophers had three more possessions without Iowa scoring, but Minnesota punted once and Shortell threw two interceptions - the second returned for a TD by Kirksey after the linebacker made a nice play to catch the ball.
Quarterback MarQueis Gray missed his second straight game for Minnesota, which hasn't won at Kinnick Stadium since 1999.
Saturday was Kirk Ferentz's 200th game as Iowa's head coach.