Olivier Giroud became France’s all-time leading goalscorer as the World Cup holders coasted past Poland to reach the quarter-finals.
The AC Milan striker scored his 52nd goal for France to claim the country’s outright record, surpassing the great Thierry Henry.
The historic goal came on the stroke of half-time after Giroud controlled Kylian Mbappe’s pass before converting low into the net beyond the reach of Wojciech Szczesny.
But having provided the assist for the first goal, the brilliant Mbappe turned on the style by scoring two fabulous strikes in the second half.
He hit a powerful drive into the roof of the net from 16 yards for his first and curled home a wonderful second in injury time to take the lead in the Golden Boot race with five goals.
Didier Deschamps’ side had been left frustrated up until the opener and could well have fallen behind.
Poland’s best opening in the first half came when the ball dropped for Piotr Zielinski in the centre of the penalty area, but his strike was straight at Hugo Lloris.
Robert Lewandowski did manage a consolation for the Poles, rolling in a penalty with the last kick of the game.
England and Senegal meet on Sunday (19:00 GMT) for the right to play France in next Saturday’s quarter-final.
Giroud and Mbappe set new records
Premier League football followers may have thought Giroud was past his best when he left England after 10 seasons with Arsenal and Chelsea to join Milan.
But the 36-year-old scored 14 goals in all competitions last term as he helped the Rossoneri claim the Serie A title for the first time in 11 years.
On his 117th cap, Giroud was desperately looking for that record goal against Poland, grimacing and shaking his head whenever a chance went begging.
He had a great opportunity when Ousmane Dembele flashed a cutback across goal but the sliding Giroud could not get sufficient contact on the ball and screwed it wide.
But he was presented with another big moment on 44 minutes, and this time he converted before being mobbed by all his team-mates during the celebrations.
France will see another of their national records broken should captain Lloris line up in the quarter-final and win a 143rd cap that will take him past legendary defender Lilian Thuram.
But it was Poland who had their goalkeeper Szczesny to thank for just a one-goal deficit at the break. The Juventus stopper dealt with Tchouameni’s low drilled strike from range, a Dembele effort after a weaving run and Jules Kounde’s shot from a narrow angle.
However, Szczesny was unable to stop Mbappe from breaking another record as he surpassed Pele’s record of scoring seven World Cup goals before the age of 24. The 23-year-old, who celebrates his next birthday two days before the final, scored both his goals came from similar positions in the penalty area to take his World Cup tally to nine in 11 matches.
He has scored 16 goals in his past 14 games for France and 33 overall from 63 appearances.
Barcelona striker Lewandowski barely had a sniff, but stroked home a retaken 99th-minute consolation from the penalty spot – after Szczesny moved off his line too quickly in saving the first effort. The Poles are now winless in their last eight meetings against France.
- 5KoundéSubstituted forDisasiat 90+2′minutes
- 8TchouaméniBooked at 31minsSubstituted forFofanaat 66′minutes
- 11DembéléSubstituted forComanat 76′minutes
- 9GiroudSubstituted forThuramat 76′minutes
- 12Kolo Muani
- 2CashBooked at 88mins
- 14KiwiorSubstituted forBednarekat 87′minutes
- 18BereszynskiBooked at 47mins
- 10KrychowiakSubstituted forBielikat 71′minutes
- 13KaminskiSubstituted forZalewskiat 71′minutes
- 19SzymanskiSubstituted forMilikat 64′minutes
- 24FrankowskiSubstituted forGrosickiat 87′minutes
- Jesús Valenzuela
Match ends, France 3, Poland 1.
Second Half ends, France 3, Poland 1.
Goal! France 3, Poland 1. Robert Lewandowski (Poland) converts the penalty with a right footed shot to the bottom left corner.
VAR Decision: Penalty Poland.
Penalty conceded by Dayot Upamecano (France) with a hand ball in the penalty area.
Offside, Poland. Robert Lewandowski tries a through ball, but Arkadiusz Milik is caught offside.
Attempt blocked. Robert Lewandowski (Poland) header from the centre of the box is blocked. Assisted by Kamil Grosicki with a cross.
Attempt missed. Robert Lewandowski (Poland) right footed shot from the centre of the box misses to the left. Assisted by Arkadiusz Milik.
Substitution, France. Axel Disasi replaces Jules Koundé.
Goal! France 3, Poland 0. Kylian Mbappé (France) right footed shot from the left side of the box to the top right corner. Assisted by Marcus Thuram.
Matty Cash (Poland) is shown the yellow card for a bad foul.
Marcus Thuram (France) wins a free kick on the left wing.
Foul by Matty Cash (Poland).
Foul by Youssouf Fofana (France).
Krystian Bielik (Poland) wins a free kick in the attacking half.
Substitution, Poland. Kamil Grosicki replaces Przemyslaw Frankowski.
Substitution, Poland. Jan Bednarek replaces Jakub Kiwior.
Foul by Kylian Mbappé (France).
Nicola Zalewski (Poland) wins a free kick in the defensive half.
Antoine Griezmann (France) wins a free kick in the defensive half.
Get your daily dose of Fifa World Cup reaction, debate & analysis with World Cup Daily on BBC Sounds