Mitt Romney has won the crucial Michigan primary, fending off a strong challenge from Rick Santorum after a bitter contest that has left Republicans anxious about damage to the party from the prolonged presidential nomination race.
Mr Romney also won the second primary held on Tuesday, in Arizona, this time easily beating Mr Santorum into second place.
The two wins will bolster Mr Romney’s quest for the 2012 Republican presidential nomination but the victory in Michigan has come at a financial and political cost.
“We didn’t win by much but we won and that’s what counts,” he said to cheering supporters.
Mr Romney won 41 per cent of the vote, while Mr Santorum took 38 per cent. The libertarian Ron Paul trailed far behind at 12 per cent, while Newt Gingrich, the former House of Representatives speaker, was a distant last with 6.5 per cent.
But Mr Romney easily won Arizona, winning 47 per cent support, while Mr Santorum came second with only 27 per cent.
Mr Romney looked visibly relieved when he mounted the podium to make his victory speech.
Mr Romney, long favoured to win Michigan, the state in which he was born, ended up in an expensive dogfight with Mr Santorum, with both trading insults in the tight final week of the campaign.
His struggle to prevail again raised questions about the strength of Mr Romney’s candidacy and his ability to win over and enthuse the Republican base for the November election.
However, a narrow victory at least gives him momentum going into the biggest contest of the primary season, Super Tuesday next week, when 10 states will hold ballots and more than 420 delegates are in play. A loss ahead of Super Tuesday would have been calamitous.
Instead of a full-fledged challenge from Mr Santorum, Mr Romney is now likely to face a draining but not debilitating war of attrition against his three remaining Republican challengers.
The Michigan race also marked a new level of incivility between Mr Romney and Mr Santorum, which bodes ill for the contest ahead.
Hours before the polls closed on Tuesday Mr Romney accused Mr Santorum of “dirty tricks”, for a robo-call appealing for the support of Democrats who could vote the primary.
In the automated calls, Mr Santorum’s campaign said: “Romney supported the bail-outs for his Wall Street billionaire buddies but opposed the auto bail-outs. That was a slap in the face to every Michigan worker and we’re not going to let Romney get away with it.”
Mr Romney said at a press conference: “I think Republicans have to recognise there’s a real effort to kidnap our primary process. And if we want Republicans to nominate the Republican who takes on Barack Obama, I need Republicans to get out and vote and say no to the, the uh, dirty tricks of a desperate campaign.”
But Mr Romney also admitted he had made “mistakes” himself, an acknowledgment after a wave of criticism of his misstatements on the campaign trail that he needed to lift his own game.
He also said he would not “light my hair on fire” for conservatives to win their votes, adding the quip that there would be a “big fire” if he did, in a reference to his healthy head of hair.
In his concession speech, Mr Santorum seemed to speak almost like a victor, saying to the voters of Michigan: “I love you back!” He made little reference either to Mr Romney or the result.
Get alerts on US politics & policy when a new story is published