Denmark's Katrine Veje scored on five minutes in Deventer, blasting her shot past Norwegian keeper Ingrid Hjelmseth after being set up by skipper Pernille Harder.
Norway wasted a spot-kick just before half-time as Danish keeper Stina Lykke Petersen kept out Caroline Graham Hansen's shot following a foul on striker Ada Hegerberg.
With hosts Netherlands beating their own neighbours Belgium 2-1 in Group A’s other final match, Denmark finished second on six points, ahead of Belgium with three and Norway -- who had advanced to the knockout stages every time since 1997 -- with zero points.
Denmark pushed for a goal from the beginning, with Harder and Stine Larsen missing the target.
Norway gradually took over, but Guro Reiten drove her two shots over.
Denmark were more dangerous, with Hjelmseth stopping shots from Sanne Troelsgaard and Frederikke Thøgersen, while Nadia Nadim fluffed a chance and was then was denied by Hjelmseth after the break.
“It was great to score. It was a good ball by Harder, and I didn’t really have time to think – so I just need to keep doing it,” Veje told broadcaster DR.
The midfielder said that reaching the quarter finals meant a tournament target had been achieved by the Danish team.
“The was our aim, and now we’re here, and were unbelievably proud of it,” she said.
At the other end, Graham Hansen fired over and then hit the post with a cross-shot five minutes from time, with Ingrid Wold's rebound turned onto the bar by Petersen.
Hegerberg called the defeat – and exit from the tournament without scoring – a “reality check” for the Norwegians.
“This is real tough. A reality check, actually. We have not been good enough. The reality is 0 points and 0 goals. And that is brutal,” Hegerberg told NRK.
Denmark will face the winner of Group B in the first round of the knockout stages, meaning a likely meeting with either Sweden or Germany – both strong favourites for the tournament.
READ ALSO: Dutch down Danes in women's Euros