Denmark substitute Andreas Cornelius scored twice as they came from behind to beat holders France in the Nations League at the Stade de France.
Karim Benzema opened the scoring with a stunning effort, cutting in from the right wing before dummying his way past three defenders and slotting in.
Cornelius volleyed in Pierre-Emile Hojbjerg’s ball over the top to level.
And the 60th-minute substitute won the game when he ran on to a long ball before firing in from a tight angle.
It was the first time the former Cardiff striker has scored twice in an international game.
Both sides had several chances in a lively opening game to group A1. In the first half Denmark’s Joakim Maehle hit the outside of the post and Benzema had a goal disallowed for offside.
In between Cornelius’ two goals, France’s N’Golo Kante crashed a shot off the post and Denmark’s Christian Eriksen forced a save from Hugo Lloris.
On a bad night for the defending champions, France lost Paris St-Germain striker Kylian Mbappe and Manchester United defender Raphael Varane to injury.
France boss Didier Deschamps missed the game following the death of his father during the week.
The first game at the Stade de France since the controversial Champions League final between Benzema’s Real Madrid and Liverpool thankfully passed without off-field incident.
Liverpool fans described heavy-handed policing, organisational chaos and overcrowding last Saturday – with Uefa apologising to fans caught up in the trouble.
Ralf Rangnick’s Austria lead Group A1 after beating Croatia 3-0 in the other game.