Here's a good piece by Jeff Greenfield that explains a bit about why the Iowa Caucuses are such a terrible way to pick a presidential nominee. Basically, there were never intended to be a good way to pick a presidential nominee:
George McGovern in 1972, and Jimmy Carter more successfully in 1976, made the Iowa caucuses a pre-New Hampshire test of political strength. And then they became in effect a "pre-primary primary," which bring to the state tens of millions of dollars and massive media overkill. In the process, the original purpose of the caucuses—to conduct party business and to talk over local concerns—became completely overwhelmed by the presidential frenzy for which they're so ill-suited. As Drake University professor Dennis Goldford notes, "The presidential preference just began as something piggybacking on an ordinary set of party functions, and it's been blown way out of proportion."