In a word, Purdue was dominant against second-ranked Iowa on Saturday, taking control early against the Hawkeyes and never relinquishing it.

The upset win — Purdue, an 11-point underdog, hadn’t beaten a top-5 Big Ten team on the road since 1964 — put a huge damper on previously undefeated Iowa’s quest for a spot in the College Football Playoff. Not only that, but it might have given the Boilermakers a pulse in a crowded Big Ten West.

Let’s grade out the Boilermakers after their 24-7 win:

Passing offense

Purdue used a 3-quarterback rotation.

On purpose.

And it worked. Aidan O’Connell, who started his second straight game, was the ringleader in the passing game, but Jack Plummer and Austin Burton played as well, particularly giving Purdue a boost in short-yardage and in the red zone. And their presence might have upped the performance of O’Connell, as well, because the signal-caller was excellent.

O’Connell and wide receiver David Bell proved a magical combination vs. Iowa. The senior QB passed for 375 yards, hitting 75 percent of his 40 attempts, with 2 touchdowns and no turnovers. And Bell, the junior WR, caught 11 balls for 240 yards and a score. O’Connell found Bell all over the field, including deep on a 60-yarder, then later on a 47-yard catch-and-run slant. But the best throw-and-catch might have been the over-the-shoulder connection for a 24-7 lead early in the fourth quarter.

Bell is indescribably good. With his subtle movements, whether it’s change of speed or a quick shuffle or body control or eye-hand coordination, he has an uncanny ability to get open and make a play. Here’s a crazy stat: O’Connell targeted Bell 12 times; the only one that was incomplete was the first attempt.

But others were good too. TJ Sheffield had an excellent day, with 8 catches for 48 yards and a touchdown; he was close to a second one, but the football slipped out of his hand on a dive for the pylon, with review changing the TD to a touchback. A tough break, but hard to fault the wide receiver for trying to make a play. The offensive line enjoyed its best game of the season too, giving O’Connell plenty of time. He was sacked only once, and that likely the result of O’Connell holding the ball too long and a lack of an underneath hot route.

Purdue’s other 2 QBs mostly ran, but Jack Plummer did complete a short pass.

Grade: A

Rushing offense

Purdue found a remedy for a pedestrian running game: Put in a couple more quarterbacks and let them run. Plummer finished with 20 yards and Austin Burton had 10, complementing the play of Purdue’s top running back, King Doerue, who had 48 yards. But it was the red zone running that made the biggest difference for Purdue, with none being bigger than Doerue’s 16-yard scamper off an option pitch to give Purdue a first-and-goal at the 6 in the third quarter.

The other big run came from an unexpected source, when O’Connell, the passing QB, scored on a third-down scramble on Purdue’s second possession. A great job by O’Connell to use the referee as a blocker, as well.

Purdue finished with only 86 yards and a 2.6 average, but it was the big plays in the running game that proved bigger than the final stats.

Grade: B-

Offense overall

Purdue had 464 yards against the No. 2 team in the country, which features one of the Big Ten’s best defenses.

The Boilermakers scored 24 points, mostly taking advantage of their trips into the red zone, when they scored on 3-of-5 chances. It’s hard to fault them too harshly on the somewhat fluky fumble into the pylon. It’s an effort play. Purdue missed a field goal.

But Purdue absolutely dominated the clock, especially in the second half when it held the ball for 21 minutes. It did so by converting 9 of its 16 third-down attempts, mixing in successes on third-and-short and third-and-long. It was impressive.

Left tackle Greg Long did have a couple holding penalties — were those before or after his on-field chug of beverage? — but Purdue mostly played a clean game.

Grade: A-

Passing defense

When the game was in danger of swinging toward Iowa’s favor, the Boilermakers slammed the door back shut.

After Sheffield’s third-quarter fumble/touchback, the Hawkeyes took over at their 20 down only 10 (rather than 17), but Purdue’s defense came up big. First, Jack Sullivan and Branson Deen combined for a sack, then George Karlaftis had one, and then Marvin Grant broke up a third-down pass, and Iowa punted. The dominant series again informed Iowa that Purdue’s defense was the best unit on the field.

It certainly showed it statistically. Purdue had 4 sacks and 4 interceptions, including picks on Iowa’s last 3 drives. Those will kill any sort of thoughts of a rally by the Hawkeyes.

Iowa QB Spencer Petras finished with 195 yards on 17-of-32 passing with the 4 interceptions.

Grade: A

Rushing defense

Tyler Goodson got loose for a 32-yard run, but that was pretty much the extent of the Iowa running game.

Purdue held the Hawkeyes to 76 yards on 30 carries. So take out the 32-yarder and the other 29 Iowa runs totaled 44 yards. The Boilermakers will take that.

Grade: A

Defense overall

Purdue’s defense gave up 7 points on only 271 yards, while collecting 4 sacks and forcing 4 interceptions.

It was a masterclass.

And at every instance that Iowa tried to claw back into the contest, the Boilermakers defense was there to turn the Hawkeyes back. It was truly a brilliant effort, maybe one of the best in Purdue history.

Grade: A

Special teams

The only area where Purdue had issues was in its kick and punt return coverage, as Iowa broke a 67-yard kick return and a 41-yard punt return in the second half. Luckily, neither amounted to much, as the Boilermakers defense bailed out the special teams mistakes.

Mitchell Fineran hit 1 of his 2 short field goals.

And credit also to Purdue’s punt team for holding up on a couple block attempts by the Hawkeyes late (although one of them resulted in the long return).

Grade: C-

Coaching

Purdue’s coaching staff, led by Jeff Brohm, rallied through the bye, searching for a way to give life to the Boilermakers dormant offense, particularly in the red zone.

One of their answers: Play all 3 quarterbacks, perhaps the first time in the history of college football that a team has intentionally used 3 QBs as part of its game plan and beaten the country’s second-best team. It was a crazy idea that worked. And Brohm and Co. made the Boilermakers believe they could go to Iowa City and win.

Purdue looked like the more confident team. It was impressive.

Grade: A+

Overall

Purdue scored one of the biggest victories in program history, not only beating the No. 2 team, but dominating it. What more can you say?

Grade: A