I doubt many people will like to hear this, but the playcalling hasn't been that much different this year. The big difference is that we are executing at a much higher level.
For example, last year Iowa was the worst team I have ever seen at the bubble screen. This is a high percentage pass play that should normally gain about 5 yards. Last year I'd be surprised if we even completed much more than 50% of these "high percentage" passes, and rarely did they gain us positive yards. This year we have been vastly better at executing this simple play as I think we have completed 100% of these passes and they have helped put us in 2nd and short situations which opens up our entire playbook. Having 2nd and 4 versus 2nd and 10 is like being ahead 2-0 or down 0-2 in the count in baseball. What you do early in the series/at-bat sets up future success in said series/at-bat.
Also, our runningbacks left a lot of yards on the field last year. Simply-put, they stunk last year. Weisman was never a game-changer at RB, but he also had a very poor year by his standards. Canzeri was hurt all of last season and has been much better this year (before he was injured). Statistically, our passing game is not much better than last year. It would be interesting to see the statistics on how many passes have been attempted/completed over 20 yards this year compared to last year. I know that as of last week Iowa was leading the Big 10 in offensive plays of over 40 yards, but a lot of that has been due to the running game (of which CJ has had a few big runs too).