On the Democratic side, Hillary Clinton will win, besting Bernie Sanders 50% to 43%. I base my prediction on two pieces of data. The first is the last five polls which show her ahead of Sanders. The second is Nate Silver's polls plus model which gives her an 80% chance of winning. Bernie may have surged late last week and earlier into this week but he appears to be dropping a bit right before the voting.
The Republican side is a little trickier. Even though Trump has been ahead in the last few polls and Silver has him with a better chance of winning than Cruz, I still say it's going to be Cruz. The evangelical vote in Iowa is very strong and most of them are supporting Cruz. Cruz has all the makings of an Iowa winner...staunchly conservative, as far right as the 1 yard line on the right side of the field, deeply religious, direct appeal to old, white values voters. In addition, the unaffiliated will flock to him over Trump when their caucuses are too small to be viable.
Hillary Clinton. Ted Cruz.