Rescue workers have carried out nearly 1,800 operations since Sunday, a ministry statement said, after eight departments were placed on high alert for flash floods.
Among the victims was a 68-year-old British woman who was found by emergency workers near her home in the town of Cazouls d'Herault in the Languedoc-Roussillon region.
Local French press in the region reported that the woman, who lives near a watercourse, was swept away by the flood waters.
Radio station France 3 quoted the town mayor Henry Sanchez, who described the woman as “fragile”.
He told the radio station: “I came to see this fragile person, and I said, you have to leave your house.
“I said I would come back and call the fire department. They arrived an hour and a half later, and she was no longer in her house.”
He added that the flooding had been very sudden – at 11.30am the river was high but there was no danger, by 1pm it had burst its banks with great force.
The woman was found by firefighters around 100 metres from her home and taken by helicopter to hospital but died overnight, a local official in the town of Beziers said.
Officials said later however that it was not clear if the two other reported deaths were directly linked to the flooding.
In the Gard region, a man in his nineties was killed Wednesday when his car came off the road.
Authorities in the Pyrenees-Orientales prefecture told AFP that a homeless man was found dead on Tuesday. An enquiry was underway to determine the cause of his death.
Around 700 homes remain without power in Herault and Gard, and the flooding could halt train services across much of the area until at least November 4, the SNCF train operator said.
“This toll could have been higher,” Transport Minister Elisabeth Borne said while inspecting the damage in Beziers, a city hit particularly hard.
Flooding also killed a man in northeastern Spain this week, and five people were missing, officials said Wednesday.
Flooding and landslides forced the closure of nearly 50 roads and halted train services in the region, as well as forcing the diversion of 37 flights, Spanish authorities said.