Watch Now: Highlights: No. 14 Iowa at No. 19 Michigan (2:27)

No. 14 Iowa and No. 19 Michigan played a game Saturday that went through all ranges of the Big Ten spectrum with the Wolverines coming away with a 10-3 win in a defensive struggle.  While both defenses played outstanding, there were also a ton of missed opportunities. 

Michigan (4-1, 2-1 Big Ten) missed two field goals and Iowa (4-1, 1-1) committed four turnovers, and on one of its most important drives of the game, hurt itself with four straight penalties. The drive chart featured 14 punts and back-to-back interceptions in the first half. So, yeah, not the prettiest game. But it's still a big win for the Wolverines. What did we learn from Saturday's rock fight? Takeaways are below. 

Michigan's defense played lights out

The last time we saw the Wolverines' defense against a team not named Rutgers, Wisconsin ran at, around and through them to the tune of 359 yards in a 35-14 embarrassment. Say what you will about Michigan's offensive struggles -- and you can bet we will -- but it was stunning to watch another team line up and, hat-on-hat, beat a Don Brown-coached defense. That didn't happen against the Hawkeyes. This Wolverines group was far more aggressive and effective with eight sacks (and nearly a handful more), four takeaways and 3.6 yards per play allowed. About the only thing Michigan didn't do well defensively was stop Iowa on third downs, but even then, the Hawkeyes were 6-of-17 after starting 6-of-12. 

In particular, Michigan's defensive front played outstanding. Kwity Paye, Carlo Kemp and Aidan Hutchinson were in the backfield constantly and combined for 3.5 of Michigan's eight sacks. And Iowa had one net yard rushing. Then there was tremendous, tight coverage on the back end. It's not a hot take to say Michigan won this game on defense alone. Good on Brown and this squad for rebounding the past couple of weeks. 

About that offense, though ... 

Michigan's defense played more than well enough to win. Their offense is the reason why Iowa even had a chance to tie things up late. With under two minutes to play, the Hawkeyes had the ball near midfield with a chance to tie. Given that Iowa had four turnovers and was completely one-dimensional, there's no reason why the Wolverines should have had to sweat this game. But they averaged 4.5 yards per play and never quite found a rhythm. That falls on the offensive staff to do a better job. 

It would seem this team is most effective when running the ball with quarterback Shea Patterson while letting him hit quick passes out of RPO looks. But that's not what Michigan did consistently and it was odd when it went away from those types of plays. I get this is a continuous frustration for Michigan fans, but it's worth pointing out again. Iowa also had a good defensive game plan, but Michigan squandered its opportunities to move the ball and put points up as well. 

Iowa's pass protection was a real problem

Hawkeyes quarterback Nate Stanley entered Saturday as one of the more efficient quarterbacks in the Big Ten with eight passing touchdowns and zero interceptions. Against Michigan, he threw three picks. He was also sacked and pressured routinely. You can start tallying Iowa's problems by pointing to the trenches. Michigan won there, hands down. Iowa has typically been known for great offensive line play, but between the poor rushing day and the QB pressures, the Hawkeyes were wholly beaten up front. But protection problems don't simply lie with the offensive line. Pass protection from running backs was a problem and there were a few instances in which Stanley held on to the ball too long and took a sack when he should have thrown it away. 

Again, credit Michigan's defense for a great game plan, but Iowa failed in pretty much every way at protecting the quarterback -- and that includes issues from the quarterback himself. 

The Big Ten West definitely looks like Wisconsin's to win

You don't want to rely on transitive properties too much in college football. After all, most teams are different every single week. But it's hard to not to look at what Wisconsin did to Michigan and what Iowa did and not see the difference. Most teams are different every single week and it's hard to count on consistency when you get into the meat of conference play, but after six weeks is there anyone in the West Division who can challenge Wisconsin? Minnesota maybe? It's still a long season and Wisconsin's toughest games are ahead of it, but the Badgers have navigated through its schedule without any hiccups. 

CBS Sports was with you the entire way with updates and scores, highlights and analysis from Michigan vs. Iowa. If you are unable to view the live updates below, please click here.

Thanks for stopping by.