Both these teams, who had never met before, came into the game on the back of 15 games unbeaten but it was clinical Denmark who claimed a 1-0 victory taking full advantage of a Peruvian missed penalty in the first half.
Peru began the game on the front foot, putting Denmark under immediate pressure and it took the Danes until the half-hour mark to regain some composure.
But the South Americans continued to press and with Tottenham's Christian Eriksen being kept quiet Peru tried to shoot at every opportunity.
Andre Carrillo forced a fine save from Danish keeper Kasper Schmeichel with a powerful left foot shot, then the same player was denied a goalscoring opportunity by a fine tackle from Simon Kjaer.
Denmark's one chance of note was just before the break when Lasse Schone followed up from Eriksen's free-kick but Pedro Gallese saved well.
Peru were then presented with the opportunity to take the lead in first half injury time after being awarded a penalty when Yussuf Poulsen brought down Christian Cueva. Referee Bakary Gassama initially dismissed the Peruvian appeals but the VAR thought otherwise.
Cueva elected to take the spot kick but from a stuttering run-up he blazed the ball high over the cross bar.
And Peru paid for this miss on 59 minutes when Denmark broke quickly. Eriksen finally showed his class with a brilliant pass into the path of Poulsen who found the back of the net at the keepers near post.
But the South Americans refused to buckle and Alberto Rodríguez headed across the face of goal then Paolo Guerrero was denied a clear heading opportunity by Poulsen who cleared from under his own crossbar and Edison Flores forced a one-handed save from Schmeichel.
The pressure was building from Peru and with 11 minutes remaining Paolo Guerrero reacts first to a deflection but from close range his cheeky back heel goes wide with the keeper struggling.
The pace of Carrillo was causing the Danes problems and as the clock ticked down his cut back found Jefferson Farfan who could only see his effort blocked from 12 yards.
With Peru committed to attack Denmark almost doubled their lead but Gallese saved Eriksen's shot. With five minutes of added time shown the Scandinavians went into defensive mode to thwart the impressive Peruvians and held on for the win.
Peru will be disappointed with this result after a 36 year absence from the World Cup but despite their pressure and being the better side they failed to take their chances and missed a penalty.
WORLD CUP 2018 - GROUP C
Denmark: 1 (Poulsen 59)