Terrified revellers screamed as a truck ploughed at speed into a crowd of fireworks spectators in Nice, an AFP reporter said, turning Bastille Day celebrations into a night of horror.
AFP correspondent Robert Holloway, who was among the the crowd celebrating France's national day on Nice's Promenade des Anglais, had to shield his face from flying debris as the truck plunged two kilometres (1.3 miles) along the beachfront, mowing people down.
"It was absolute chaos," Holloway said.
"We saw people hit and bits of debris flying around. I had to protect my face from flying debris."
At least 60 people have been killed and scores injured, prosecutors said, with local government official Sebastien Humbert saying Nice had been hit by a "major criminal attack".
People screamed and scattered as the truck veered down the palm-lined promenade where thousands of adults and children had gathered for the fireworks, walking towards the famous Negresco Hotel.
"For a big truck like that to get actually onto the promenade and then to go in a fairly straight line along there, looked to me like a very deliberate act," Holloway said.
"It was about 100 metres from me and I had a few seconds to get out of the way."
Other witnesses described hearing gunfire, although this was not immediately confirmed by the authorities.
A picture taken on July 15, 2016 shows the dead body of a person on the ground after a van drove into a crowd watching a fireworks display in the French Riviera town of Nice.
Police could be seen surrounding the truck in the early hours of Friday, its windscreen riddled with bullet holes, under the lights of the Negresco Hotel.
Witness Roy Calley, who said he lived 200 metres from the promenade, told the BBC there was "all hell breaking loose" and the situation was "pretty horrendous".
"It was a celebratory atmosphere, it was fun, people were enjoying themselves.
Suddenly I heard a huge, what I can only describe as maybe an explosion or a crash.
A lot of people were screaming. That was followed by what I thought were maybe gunshots."
Australian Emily Watkins said she was less than 50 metres away from the incident and saw the truck on the promenade but did not realise what was happening.
"There was a lot of confusion. I don't actually remember seeing the truck moving," she told the Australian Broadcasting Corporation.
"There was a lot of screams coming from ahead of us where the truck was, and people just running towards us and without really knowing what was going on we turned and ran as well.
"As we were running away we could hear what I thought at the time were more flares or fireworks.
"People were tripping over and trying to get into hotel lobbies and restaurants or car parks or anywhere they could to get away from the street."
Her partner David Cody, an ABC producer, added: "People were tripping over in the commotion, there was a lot of panic.
"People were trying to get into hotels, any businesses that were open, trying to take shelter, because it was unclear what was happening.
"With each bang that we heard behind us, people perhaps started to go a bit faster, people were tripping over, it was a very chaotic scene."
Earlier in the evening, as the crowds enjoyed the fireworks, lightning had flashed in the skies above the Riviera resort.