Two tries by George North, one from Tomos Williams and points from the boot of Gareth Anscombe and Dan Biggar helped Wales overcome Les Bleus after the hosts had dominated the first half.
Jacques Brunel's side scored two tries through Louis Picamoles and Yoann Huget, and Camille Lopez kicked nine points.
Six Nations
France live up to star billing to see off England and clinch Grand Slam
19/03/2022 AT 22:50
Wales have now won all their matches since they beat Italy in last year's Six Nations.
France have only won one of their last eight games and they head into next weekend's clash against England at Twickenham with little confidence.
France made a strong start, running at the Welsh defence and playing a quick-passing game to lead 16-0 at halftime.
They went ahead when Picamoles touched down after Les Bleus had worked through the phases inside Welsh territory.
But the hosts missed opportunities to increase the lead as Morgan Parra missed the conversion and a penalty.
Wales thought they had levelled but Liam Williams's try after he sped through the defence was ruled out because he had knocked the ball on.
A brilliant Arthur Iturria offload set up Huget on the left flank and the winger sped down the line to dive over and reward France for their flair.
Parra missed the conversion before Anscombe failed with another penalty as rainy and windy conditions affected the kickers.
Wales were under tremendous pressure and conceded a penalty, which Lopez converted to extend the home side's lead to 13-0 and Lopez added a 40-metre drop goal.
But Wales burst into life early in the second half, greatly helped by French errors.
Josh Adams raced through the defensive line and set up Williams for a try which was converted by Anscombe.
The visitors were two points behind shortly afterwards when Huget fumbled a ball on the try line attempting to deal with a hopeful kick through and North pounced to touched down.
Wales moved in front when Biggar slotted a penalty as France grew increasingly shaky but the hosts regained the lead through a Lopez penalty.
With the game on a knife-edge, North intercepted a poor Sebastien Vahaamahina pass to run unopposed to the line for his second try and Wales hung on for the win.
Women's Six Nations Championship
Griggs wants more despite huge Ireland victory
11/04/2021 AT 15:18
Six Nations
Wales crowned Six Nations champions as Scotland beat France
26/03/2021 AT 22:08