The 32-year-old has signed a two-year contract for a reported £1.8 million (2.08 million euros, $2.17 million).
Sissoko signed for Watford from Tottenham at the start of last season but could not prevent the Hornets from suffering relegation from the Premier League.
He first moved across the Channel in 2013 to join Newcastle after a six-year spell with Toulouse, going on to play for Spurs, with whom he reached the Champions League final in 2019.
Sissoko has made 71 international appearances for France, but has not played since their Euro 2020 last-16 loss to Switzerland last year.
Nantes will play in European competition next season for the first time since 2004 after qualifying for the Europa League group stage by winning the French Cup, their first major trophy for 21 years.