Eyewitnesses said the killer swerved from side to side to kill as many people as possible as he drove for hundreds of metres along the Promenade des Anglais on the seafront of the city in the south of France.
At first horrified onlookers assumed the driver had lost control.
But one witness said he then produced a gun before being shot by police.
As sun rose on Friday morning, the lorry could still be seen where it finally came to a halt, its windscreen peppered with bullet holes.
As French President Francois Hollande said the country’s state of emergency would be extended for another three months, French media reported that the killer was known to police but for petty crime, not terrorism.
Mr Hollande led a wave of condemnation from world leaders, saying: “France has been hit by a tragedy once again. This monstrosity of using a lorry to deliberately kill people, many people, who only came out to celebrate their national day.
“France is in tears. It is hurting but it is strong, and she will be strong, always stronger than the fanatics who wish to hurt us.”
He also said a military operation was in place which would allow the mobilisation of 10,000 troops and that police from across the country would be called to assist their colleagues in Nice.
The country’s borders were being tightened, said Mr Hollande, as he vowed that France would show “real force and military action in Syria and Iraq”.
In a press conference at the scene, French Interior Minister Bernard Cazeneuve said: “We are in a war with terrorists who want to strike us at any price and in a very violent way.”
Nice regional president Christian Estrosi said guns and grenades were found in the lorry.
The politician, who was at the celebration when the carnage happened, said: “This is the worst Nice drama of history.
“We are terrified and we want to present to all the families our sincere condolences.”
Nice prosecutor Jean-Michel Prette said bodies were strewn along the road.
Interior Ministry spokesman Pierre-Henry Brandet said no hostages had been taken and the lorry driver had been “neutralised”, adding that authorities were investigating if he was acting alone.
Pictures and video footage on social media showed crowds fleeing in terror from the scene on the Promenade des Anglais, which was busy with revellers celebrating and watching fireworks.
Eyewitnesses reported hearing gunshots, and pictures on social media showed armed police with weapons trained on the white lorry.
France is still on alert after the Paris terror attacks on November 13, in which 130 people were killed at sites including the Bataclan Theatre and Stade de France.
The state of emergency initiated after those attacks, which has now been extended, was due to be lifted later this month.
Briton Will Shore told BBC Radio 4: “There was a lot of people screaming, running around and people were kind of being pushed over, I think, from people just being so frightened about what was going on especially after hearing the gunshots.
“I had to help a couple of people up who were in distress on the floor because everyone was in such a panic.”
Many families with children had gone to the seafront to watch the Bastille Day fireworks and in the aftermath adults were seen trying to comfort and calm terrified youngsters.
A Foreign Office spokeswoman said: “We are deeply concerned about reports of an incident in Nice and are in touch with the local authorities to seek more information.
“Our thoughts are with those affected and we stand by to help any British nationals.”
A Downing Street spokesman said: “The Prime Minister is being kept updated on reports coming in from Nice.
“We are shocked and concerned by the scenes there. Our thoughts are with all those affected by this terrible incident on what was a day of national celebration.
“The FCO are in touch with the local authorities to seek more information and we stand ready to help any British nationals and to support our French partners.”