President Nicolas Sarkozy and his rival Francois Hollande have traded insults in their only TV debate of the election campaign.
Nicolas Sarkozy called Francois Hollande a “little slanderer”, while his challenger said the president shirked responsibility.
The president defended his record and said he had kept France out of recession. But Francois Hollande said France was going through a “serious crisis” and was struggling with slow growth.
The run-off vote takes place on Sunday.
It was a long, bad-tempered debate that left the impression that neither candidate liked each other.
There were plenty of angry exchanges, with both candidates accusing each other of lying.
Francois Hollande accused Nicolas Sarkozy of “ruining the French economy”, prompting his rival to say he had been unfairly blamed.
“It’s never your fault,” Francois Hollande responded, to which Nicolas Sarkozy said: “It’s a lie, it’s a lie!”
Analysts said neither candidate landed a knockout blow – which may be to the advantage of Francois Hollande, the favorite for Sunday’s vote.
Opinion polls suggest the Socialist candidate has a lead of seven percentage points.
Francois Hollande said he would work to help those in need, saying that those “with privileges” had been protected under Nicolas Sarkozy.
“I will be a president for justice, because we are going through a serious crisis that hits in particular the most modest of us, the hardest working people, those who are the most vulnerable.”
He accused Nicolas Sarkozy of failing to take responsibility for the economic difficulties that France was suffering, blaming it instead on the global economic crisis.
Francois Hollande said unemployment levels were “a record” and referred to the downgrading of France’s credit rating.
Lashing back at Francois Hollande, President Nicolas Sarkozy said France had done better than other European countries in coping with the economic climate.
“What is the country to not have known recession since 2009 – it is France,” Nicolas Sarkozy said.
He rejected Francois Hollande’s proposed stimulus programmes, insisting that France had to cut spending and debts.
Nicolas Sarkozy also accused Francois Hollande of representing only the unions, rather than all of France.
“It’s all very nice to talk about uniting people, but it has to be put into practice,” he said.
Francois Hollande also said he would be firm on demands made by the Muslim community, saying he supported France’s ban on face-covering veils and would not allow separate hours in swimming pools for men and women.
Nicolas Sarkozy has similarly criticized demands for special treatment from France’s Muslim community.
The debate was broadcast live by several channels and ran over time to nearly three hours.
There has been a huge build-up to the event, billed variously by newspapers as The Last Duel and The Final Confrontation.
About a third of France’s 63 million people were set to watch the live debate.
Nicolas Sarkozy had attacked Francois Hollande for refusing to hold three election debates instead of one, but there has been just one debate per presidential election since 1974, apart from in 2002 when Jacques Chirac refused to debate with the far right’s Jean-Marie Le Pen.
A key moment in Nicolas Sarkozy’s 2007 debate with Segolene Royal – Francois Hollande’s former partner and mother of his children – came when he told the Socialist candidate to “calm down”. She repeatedly refused to do so, saying some anger was “perfectly healthy”.
In this debate, Nicolas Sarkozy came across as the more aggressive participant, leaning forward and raising his voice more often, analysts say.
It was presented by two French TV anchors, Laurence Ferrari of TF1 and David Pujadas of France 2.