The visitors were out of tune in the first half and created little by way of chances. Alex Telles had the best of them with his freekick that was deflected onto the crossbar before Cristiano Ronaldo's left foot drew a save from Tim Krul.
Dean Smith's side got into some promising positions throughout the game and were unlucky not to take the lead through Teemu Pukki's effort that forced David de Gea into action. But despite the Canaries' best efforts to take the lead, Max Aarons was adjudged to have fouled Ronaldo, who made no mistake from the penalty spot.
Norwich almost responded immediately when Ozan Kabak got plenty of contact on his header that saw De Gea produce the save of the game. After Ronaldo scuffed over from Marcus Rashford's cutback, De Gea was called into action once more with a game-saving stop at the near post to complete a man of the match performance worth all three points.
Ralf Rangnick's side kept it tight at the back despite not performing at the other end of the pitch. The home side will be wondering how they didn't score.
A sloppy offensive performance meant Manchester United had to rely on their defence and goalkeeper.
Manager rating out of 10
Ralf Rangnick, 7 - A positive team selection saw Rangnick's best players deployed further forward, though he didn't receive the dividends that he would have expected. The manager's decision to withdraw Victor Lindelof immediately is also noteworthy, with the Sweden international seemingly feeling something off-beat from his heart.
Player ratings (1-10; 10 = best, players introduced after 70 minutes get no rating)
GK David de Gea, 9 -- The Spain international had little to do for the majority of the first half but produced a stunning save against Teemu Pukki's strike before palming away Ozan Kabak's header to deny the home crowd of an equaliser.
DF Alex Telles, 5 -- The Brazilian's free kick came close to troubling Tim Krul as he saw it deflected onto the crossbar in a first-half display that was wasteful at best.
DF Harry Maguire, 6 -- Maguire settled down after a sloppy pass early on and showed good concentration against Norwich's late flurry of attacks.
DF Victor Lindelof, 6 -- An assured performance at centre-back with Lindelof reacting quickly to the Canaries' runs in behind, though he had to be withdrawn early with what looked to be a health issue.
DF Diogo Dalot, 7 -- Dalot got up and down the right flank but had to be careful in the second half with Norwich committing runners down his channel. One of United's better players on the day.
MF Bruno Fernandes, 5 -- Too wasteful on the ball and that saw possession carelessly overturned on too many occasions.
MF Fred, 7 -- The 28-year-old appears to enjoy playing under Rangnick and he is suited to the higher pressing style of play. He produced some passes with intent to help transition United's attack into higher gear, and he was equally as adept with his defensive display.
MF Scott McTominay, 7 -- The Scotland international's work rate was tireless as he got back to stop the Canaries, who were attacking central areas with pace. McTominay also took care of the ball and was astute in possession. A standout performer on Saturday evening.
MF Jadon Sancho, 5 -- Sancho produced some moments of promise but they were few and far between. The 21-year-old was anonymous for too many portions of the game and was eventually replaced for Mason Greenwood.
FW Marcus Rashford, 5 -- Norwich's deep line didn't allow Rashford to utilise his pace as much as he would have liked, while there was also little link-up play between the 24-year-old and Ronaldo. Gave the ball away too much overall.
FW Cristiano Ronaldo, 6 -- Ronaldo missed a volley to the delight of the Carrow Road crowd early on but made amends with a penalty that he won and dispatched with class.
Mason Greenwood, 6 -- Replaced Sancho in the 67th minute and refreshed United's pace upfront, though it wasn't long until he saw his side take the lead.
Eric Bailly, N/R -- Introduced for Lindelof in the 77th minute but didn't look settled into the game at any point.
Donny van de Beek, N/R -- Came on for Fernandes in the 89th minute and gave away a freekick that nearly led to a goal.