Iowa's flag isn't horrible and it's not usually one of the ones singled out for replacement. The blue, white and red tricolor make it reasonably distinctive from among the other 49 state flags, and it is also recognizable from a distance, one of the major requirements of good flag design and an area where the majority of the state flags fail.
Iowa's flag could be improved by getting rid of the words on it. Words don't belong on flags because they're next to impossible to read, either because the flag is flapping in the wind (which is made an even bigger impediment to legibility when the wind is blowing from the other direction with respect to the viewer), or because the flag is limp, so that the text is obscured in the folds of the cloth. The first word I'd highlight for removal is "Iowa". It's especially lame to write the name of the state on something that is supposed to be a symbol of the state for which it stands. To put it in perspective, how silly would it look if our national flag had "United States of America" written on it?