Stuart Armstrong and Danny Ings, who would eventually break the deadlock after halftime, each had quality chances in the opening 45 minutes.
After a sluggish start, Southampton grew into the game, with Armstrong running unmarked into the box to meet James Ward-Prowse’s corner kick, but Tim Krul was equal to the task.
Jan Bednarek then charged into the Norwich half and teed up Danny Ings, who struck the crossbar with an effort from the left side of the box.
Southampton carried the momentum out of the break and deservedly took the lead on 50 minutes when Ings fired a right-footed effort beyond Krul to make it 1-0.
Armstrong doubled the lead four minutes later after Ings turned from goalscorer to provider.
The midfielder cut back on his left foot before hammering a low shot from the edge of the box into the corner of the goal.
Nathan Redmond ensured a comprehensive with a third goal 11 minutes from full-time, with Southampton climbing into 13th place in the league table ahead of the weekend’s fixtures.
Norwich City: Krul, Aarons, Godfrey, Klose, Lewis, Trybull (Henandez), Buendia (Idah 80), McLean, Cantwell (Vrancic 62), Dmric (Martin 89), Pukki (Duda 80)
Unused subs: McGovern (GK), Rupp, Leitner, Tettey
Southampton: McCarthy, Bertrand, Bednarek, Stephens, Valery (Boufal 90), Hojbjerg, Ward-Prowse, Armstrong (Smallbone 82), Redmond (Walker-Peters 90), Ings (Tella 88), Obafemi (Adams 82)
Unused subs: Gunn (GK), Vestergaard, Danso, Romeu
Goals: Ings (50), Armstrong (54), Redmond (79)
Bookings: Ings (73)