France has been on high alert following the Bastille Day truck attack in Nice which killed 84 and the jihadist murder of a priest last week.
All the passengers had already disembarked after their voyage from Corsica and the blast did not cause any damage to the ship or dock, officials said.
"The Jean Nicoli of the shipping company Corsica Linea had completed its disembarking operations after coming from Porto Vecchio when what appears to be an underwater explosion shook the ship," the Marseille port authority said in a statement.
"The ship's captain immediately implemented security procedures and suspended the operation of embarking passengers for the next destination of Porto Torres in Sardinia," it said.
Marseille deputy prosecutor Jean-Jacques Fagni confirmed to AFP that the explosion "very fortunately was without any consequences, neither to property nor person".
The port authority said only crew members were on board at the time and all were immediately evacuated.
"I was in the cabin, and there was noise: 'boom'," and "It went 'boom' and we felt like something moving up and down," two maintenance workers said.
An investigation was underway to determine the cause of the explosion.
The magistrate had initially said it appeared to be caused by an old explosive device on the seabed.
Dives conducted during the afternoon however did not seem to support this hypothesis, according to a source familiar with the incident.
"There was something, for sure, but what?" said the source.
The prosecutor said Sunday night: "It is still too early to say what it is or what it is not," while noting that they had not ruled out it being caused by an old bomb.
Marseille police commissioner Laurent Nunez said "security measures" had been taken, including inspections of other quays, following the incident.
After "removing any doubts" he allowed the ship to depart Sunday night for Sardinia, its original destination.
There are numerous World War II munitions in the sea and on land around Marseille, which was the scene of a major battle. In January frogmen found 50 unexploded shells off the port.