US Senator John Kerry has scored a second win over Democrat rival Howard Dean in the New Hampshire primary to boost his chances of challenging for the White House.
A surprise winner of last week's caucus in the midwestern state of Iowa, the 60-year-old Kerry beat Dean and five other candidates in the tiny northeastern state on Wednesday.
With more than 50% of the vote counted, Kerry had 39%
compared to Dean's 25%.
Retired General Wesley Clark appeared to have finished third by a slim margin from Senator John Edwards.
Heavy turnout was reported, despite freezing temperatures and a looming snowstorm, after candidates blitzed schools, restaurants and other places in a last-minute push to sway large numbers of undecided voters.
Kerry, a Vietnam War veteran who has represented New Hampshire neighbour Massachusetts for four terms in the US Senate, had earlier sought to temper expectations.
"I'm not looking at polls. I'm out there looking for votes and talking to the citizens of New Hampshire. There are still people undecided," said Kerry, who was catapulted into the role of frontrunner by his win in Iowa.
Dean, 55, strongly favoured just two weeks ago to easily win the Democratic presidential nomination, and the right to face Republican incumbent Bush on 2 November, had made a last pitch to voters on Tuesday.
"I think people in New Hampshire know me pretty well. I governed next door for 11 years. We've balanced budgets. I delivered health care to everybody under the age of 18," Dean said.
The speech Howard Dean would
sooner forget - ''I have a scream''
"I think those are things that are going to weigh on people's minds when they go to the polls."
Despite trying to focus their ire on Bush, Kerry and Dean each exchanged barbs in recent days as the campaign turned testy.
Kerry accused Dean on Tuesday of "running a negative attack campaign," while Dean said his rival complained too much.
"One thing John's going to have to learn as the frontrunner is that you're going to have to stop whining," Dean said.
Dean is fighting to overcome a slide in his campaign accelerated by what has become known as his "I have a scream" speech after his disappointing showing in Iowa.
"I think most people just look at the speech and say OK, it was a passionate speech. Was it presidential? Of course it was not presidential. Would I do it differently if I had the chance? Yes, I would," Dean told CNN.
After New Hampshire, the nomination battle will shift to the 3 February primaries and caucuses in seven states, including the key states of South Carolina, Missouri, Arizona and Oklahoma.
"This is going to be a long process, this nomination," said Edwards, a 50-year-old lawyer, who finished a surprising second in Iowa, but is lagging behind Kerry, Dean and Clark in the New Hampshire polls.
The 59-year-old Clark, who skipped Iowa to concentrate on New Hampshire, said he too, was preparing for the next steps.
"We've got good organizations in South Carolina, Tennessee, Virginia, Arizona, Oklahoma, New Mexico, Michigan, Wisconsin," he said.