France broke away in the second half to secure a 40-18 win over Italy in Rome, earning a second victory of the tournament.
Italy took a surprise lead through Sergio Parisse but France responded in kind through Gaël Fickou, with three penalties from Camille Lopez to two from Carlo Canna giving France a 16-11 advantage by the break.
Virimi Vakatawa's try extended the French advantage and from there they never looked back, Louis Picamoles crashing over before Brice Dulin secured the bonus point in the final few minutes.
Under the Rome sunshine Italy started full of running, a multiple-phase attack concluding when Canna sold a dummy to the French defence to draw in two defenders, before freeing his arms to offload to Parisse for the opening score.
France hit back through a Lopez penalty after Edoardo Gori strayed offside at the scrum, but Italy had the perfect chance to respond after unlocking France's defence with a cute offload from Parisse.
With numbers to spare out wide, Lorenzo Cittadini's cut-out pass was the entirely wrong option and France escaped conceding a second try.
That mistake aside this was an outstanding display in the opening quarter from the Azzurri, whose confidence appeared high. Canna punished France for not rolling away with a first penalty to make it 8-3.
France then punctured the mood with an attack straight off the restart. Fickou's excellent mid-air take released Vakatawa down the touchline, and after testing the Italian defence France won a penalty which Lopez converted to cut the gap to two points.
Suddenly it was France who had their tails up, executing a brilliant attack from deep for their first try.
Rémi Lamerat and Vakatawa combined to chew up the ground ahead of them before the ball was kept alive and Fickou finished it off, slicing through following a brilliant show-and-go before scoring under the posts. Lopez converted, with France ahead for the first time at 13-8.
Italy have crumbled after similar moments in the past but this was a little different, working their way upfield for Canna to land a second penalty and reduce the deficit.
Another Lopez penalty in response cemented France's advantage, with les Bleus holding a 16-11 advantage come the interval.
And the purple patch for Lopez off the kicking tee continued with another three points after half-time, stretching the lead to six, before France looked on the verge of putting the game to bed following another Fickou break. Edoardo Padovani had other ideas, reeling in Vakatawa down the touchline.
The big winger couldn't be restrained for long however. Setting up deep in Italian territory, Baptiste Serin's short pass caught Italy out around the fringes for Vakatawa to score under the posts, making it 26-11 with the conversion from Lopez.
Early optimism over Italy's prospects was now beginning to fade, Giorgio Bronzini denied by the TMO, with France instead going up the other end and powering over through Picamoles after Italy's forwards had been sucked into the rolling maul.
Eddy Ben Arous looked to have wrapped up the bonus point, only for the try to be brought back after Picamoles was adjudged to have a foot in touch.
With the game all but won, France handed a debut to exciting young scrum-half Antoine Dupont, and it took until the 76th minute for the bonus point to finally come.
Kévin Gourdon, in another outstanding performance, broke free and fed Dulin on his outside for the full-back ro race home, securing the bonus-point win in the process, with Angelo Esposito's late consolation try for Italy having no bearing on the outcome.
Tries: Parisse, Esposito
Pens: Canna 2
Tries: Fickou, Vakatawa, Picamoles, Dulin
Cons: Lopez 4
Pens: Lopez 4
Italy: 15 Edoardo Padovani, 14 Angelo Esposito, 13 Michele Campagnaro, 12 Luke McLean, 11 Giovanbattista Venditti, 10 Carla Canna, 9 Edoardo Gori, 8 Sergio Parisse (c), 7 Simone Favaro, 6 Abraham Steyn, 5 Dries van Schalkwyk, 4 Marco Fuser, 3 Lorenzo Cittadini, 2 Leonardo Ghiraldini, 1 Andrea Lovotti
Replacements: 16 Tommaso D’Apice, 17 Sami Panico, 18 Dario Chistolini, 19 George Biagi, 20 Maxime Mbanda, 21 Giorgio Bronzini, 22 Tommaso Benvenuti, 23 Luca Sperandio
France: 15 Brice Dulin, 14 Noa Nakaitaci, 13 Rémi Lamerat, 12 Gaël Fickou, 11 Virimi Vakatawa, 10 Camille Lopez, 9 Baptiste Serin, 8 Louis Picamoles, 7 Kévin Gourdon, 6 Fabien Sanconnie, 5 Yoann Maestri, 4 Julien Le Devedec, 3 Rabah Slimani, 2 Guilhem Guirado (c), 1 Cyril Baille
Replacements: 16 Christopher Tolofua, 17 Uini Atonio, 18 Eddy Ben Arous, 19 Paul Jedrasiak, 20 Bernard Le Roux, 21 Antoine Dupont, 22 Francois Trinh-Duc, 23 Yoann Huget
Referee: Ben O’Keeffe (New Zealand)
Assistant Referees: Nigel Owens (Wales), JP Doyle (England)
TMO: Marius Jonker (South Africa)