Substitute Andreas Cornelius scored twice as Denmark recovered from conceding to a brilliant Karim Benzema goal to beat France 2-1 on Friday in the UEFA Nations League at the Stade de France, the first match at the venue since the chaos that marred last weekend's Champions League final.
Benzema's stunning strike put World Cup holders France in front six minutes after half-time, only for Trabzonspor striker Cornelius to turn in Denmark's equaliser midway through the second half and then smash in an 88th-minute winner.
That meant it was a disappointing night for France who saw both Kylian Mbappe and Raphael Varane come off injured.
"We have players who have played a lot of games this season and we clearly lacked freshness," said France assistant coach Guy Stephan, who added that Mbappe was struggling with a knee knock and Varane had a hamstring problem.
There was a near-full house of 75,833 inside the Stade de France, including 1,400 Danish supporters, but the atmosphere outside the ground ahead of kick-off was calm.
That was in stark contrast to the scenes six days earlier, when serious organisational problems led to fans being unable to get into the stadium while many peaceful supporters were tear-gassed ahead of Real Madrid's 1-0 win over Liverpool.
Because of the pandemic, Friday's match was the first France national football team game at the stadium without crowd restrictions since November 2019.
Home supporters were hoping to see Les Bleus start with a victory as they defend the Nations League title they won last year by beating Spain in the final.
This was the first of four matches they will play this month in League A, Group 1 before their players can depart on holiday, and the game did not really come to life in the first half.
- Mbappe, Varane come off -
France, whose coach Didier Deschamps was absent following the death of his father, were dealt a blow when Paris Saint-Germain star Mbappe pulled up just before the interval.
He did not reappear after the break, with Christopher Nkunku taking his place, and the RB Leipzig forward played a part in the opening goal in the 51st minute.
Benzema, on the same ground where he won the Champions League last weekend, collected the ball on the right, played a one-two with Nkunku and left the Danish defence for dead before slotting in on the occasion of his 95th cap.
Manchester United centre-back Varane then also hobbled off, with William Saliba replacing him, and Denmark capitalised as they turned the match on its head.
Cornelius had not long been on the field when he appeared completely unmarked in the area to apply a first-time finish to Pierre-Emile Hojberg's floated assist.
Hugo Lloris kept out Andreas Skov Olsen's rasping drive shortly after, before N'Golo Kante crashed an effort off the woodwork at the other end.
Christian Eriksen then squandered a great chance to put the away side in front in the 86th minute as Lloris denied him from point-blank range.
However, the Danes did win it moments later as Cornelius beat the offside trap before running through and holding off Saliba to fire past Lloris from a tight angle.
- Netherlands thump Belgium -
"France is probably the best team when you look at the names and quality of their players," admitted Danish coach Kasper Hjulmand.
"I have heard a lot of people back home in Denmark are out on the streets celebrating and that is just great. I am very happy for Danish football tonight."
The result is a warning for France, who will be in the same group as Denmark at the World Cup later this year.
The sides will be in Nations League action again on Monday with France away to Croatia and Denmark in Austria.
Croatia suffered a 3-0 home defeat by Austria on Friday with Marko Arnautovic, Michael Gregoritsch and Marcel Sabitzer all scoring.
Meanwhile the Netherlands romped to a 4-1 win over neighbours Belgium in Brussels in League A, Group 4.
Steven Bergwijn gave the Dutch the lead before Memphis Depay netted a second-half brace either side of a Denzel Dumfries goal. Michy Batshuayi pulled one back late on for Belgium.