James Maddison fired a 79th-minute winner to give Norwich a 1-0 Sky Bet Championship triumph over Carabao Cup semi-finalists Bristol City at Ashton Gate.
The midfielder accepted a pass from Ivo Pinto and cut in from the right to beat Frank Fielding with a sweetly struck left-footed shot from 15 yards.
The goal - Maddison's eighth of the season - settled a closely fought game and condemned the hosts to a fifth straight defeat in all competitions.
Norwich made a bright start and forced the first save on 15 minutes when Fielding had to dive to his left to parry Maddison's powerful shot from 25 yards.