Cruz won 28 per cent of the vote in last night's primary, while Trump - who has in the past called Iowans "stupid" - took just 24 per cent. Marco Rubio secured a better-than-expected 23 per cent, putting him in good stead for next week's New Hampshire vote.
"Iowa has sent notice that the Republican nominee and the next President of the United States will not be chosen by the media, will not be chosen by the Washington establishment," Cruz said on winning.
Trump was dignified in the face of defeat, saying: "We finished second, and I have to say I am just honoured."
Clinton, who was easily the frontrunner coming into the campaign, suffered a huge set-back in the first test of her appeal to the electorate. With 99.99 per cent of the votes counted, the former secretary of state had secured just 49.9 per cent of the vote, compared with Sanders' 49.6 per cent.
She claimed victory with a "big sigh of relief" - but the fact it was a virtual tie means her campaign for President is already starting to show signs of stress.