The 22-year-old suspect was taken into custody on Saturday after surrendering at a police station in Ghyvelde just outside the Channel port city of Dunkirk around 5:20 pm (1620 GMT) on Saturday afternoon — two hours after the first killing.
He is “unknown to the police service and judicial authorities,” Dunkirk’s chief prosecutor Charlotte Huet said in a statement.
A charge of murder combined with other crimes and possession of restricted firearms – several of which were found in the suspect’s car – carries a maximum sentence of life in jail.
“Many inquiries are underway,” prosecutor Huet said, especially “to clarify the reasons that led the suspect to commit these crimes”.
A source familiar with the case said police are investigating whether the man had a professional falling-out with the companies where the first three victims worked.
All five murders were committed within less than two hours in the Dunkirk area.
In the first incident, a 29-year-old man was killed with several gunshots outside his house in Wormhout, a village just south of the city, prosecutors said.
The local town hall hailed the man as a local business owner and young father who ran a trucking company employing around 30 people.