Graziano Pellè struck twice, but Manchester United recovered from going a goal down to take all three points in a five goal game at St Mary’s.
Pellè’s fifth strike of the season put Saints ahead after 13 minutes, but two goals from Anthony Martial either side of the break put United in front.
The visitors, who enjoyed the lion’s share of the second half action looked to have sealed their win on 68 minutes when Juan Mata fired home from a rebound after Memphis Depay’s shot came back off the post.
However, Pellè struck again on 86 minutes to set up a tense finale for the visitors where Saints pushed United all the way, with Louis van Gaal’s men holding out for the win.
Ronald Koeman made three changes to the team with Maya Yoshida, Oriol Romeu and Sadio Mané coming back into the starting eleven from the team that began the goalless draw at West Bromwich Albion.
Wayne Rooney returned for the visitors to lead United’s frontline alongside summer signing Anthony Martial. Morgan Schneiderlin made his first return to St Mary’s with a start in midfield for Louis van Gaal’s side.
The hosts got the game under way with Pellè and Mané commencing Saints’ attack of the Chapel Stand for the first half.
A midfield battle dominated the opening exchanges, with both teams grappling for a foothold on the contest.
Saints gradually got going in attack and threatened on eleven minutes when Pellè’s crossfield ball picked out Mané, who fed the ball into Tadić and the Serbian took one touch to control it before striking wide from the edge of the area.
That effort preceded the opening goal of the game two minutes later when Ward-Prowse’s cross from the right picked out Mané, whose first time shot was blocked by a terrific point-blank save from De Gea, but Pellè was on hand to ram home the rebound.
Having grabbed his third league goal of the season, number four nearly followed straightaway when Romeu put the ball into Pellè’s path, and the Italian’s turn and low shot came back off the base of the post.
The chances kept coming for the hosts, with Ward-Prowse receiving Targett’s cutback to take a shot which stung the hands of De Gea from the edge of the area.
Ward-Prowse had what looked like good claims for a penalty turned down on 26 minutes when he was nudged to the ground by Marcos Rojo, but referee Mark Clattenburg was unmoved.
The game reverted back to a battle until out of nowhere, United brought themselves level. Juan Mata appeared to be in an offside position when he collected the ball in the area where he knocked it to Anthony Martial who slipped the ball in past Stekelenburg to level the scores on 36 minutes.
United nearly turned the game on its head four minutes before the break when Mata snuck in after a fortunate break to Depay inside the area, but Virgil van Dijk did enough to clear the danger as the teams headed into the break on level terms.
Both teams made one change apiece at the break in the full-back positions. Matt Targett, who took a knock towards the end of the opening 45 minutes, was replaced by Cuco Martina, while Antonio Valencia came on for Darmian.
United adapted quickly to the new half and took the lead five minutes after the restart. Maya Yoshida’s backpass came up short and Martial nicked in before producing a composed finish that saw him roll the ball into the far corner past Stekelenburg.
Depay fired a shot wide from the left for the visitors, before Saints arose from their slow start to the second 45 as Mané forced a corner off Blind.
The resulting set-piece taken by Tadić’s was met by the head of Fonte, whose header was brilliantly clawed off the line by De Gea, with the ball behind the shot stopper as he made the save.
United brought Bastian Schweinsteiger on for the final half an hour, and the visitors appeared tp make the game safe soon after with a relatively simple goal after 45 unanswered passes on 68 minutes. Depay’s advance into the area on the right saw him afforded time and space to hit a shot that came back off the post, and into the path of Mata who finished on the rebound for 3-1.
Shane Long came on for the final quarter of an hour or so to try and spark a comeback, and although it seemed unlikely to happen, Saints got themselves back in it with four minutes remaining when Pellè grabbed his second of the game.
The Italian was well placed to meet Sadio Mané’s right wing cross which he headed into the top corner for a late lifeline.
Long teed Pellè up for another opportunity with one minute to play, but this time his header was off target.
With five minutes of stoppage time added on, Saints sensed an opportunity to snatch an equaliser.
Wanyama forced De Gea into a fingertip save from distance, before Fonte saw a header cleared from the line, but it was too little, too late from the hosts as United toasted their 23rd Premier League success over Southampton.
Southampton team: Maarten Stekelenburg, Maya Yoshida, José Fonte (c), Virgil van Dijk, Matt Targett (Cuco Martina 46), Victor Wanyama, Oriol Romeu (Steven Davis 56), James Ward-Prowse (Shane Long 76), Dušan Tadić, Sadio Mané, Graziano Pellè
Unused substitutes: Kelvin Davis, Cédric Soares, Jay Rodriguez, Juanmi
Booked: Van Dijk (73), Fonte (78)
Goals: Pellè(13) & (86)
Manchester United team: David De Gea, Marcos Rojo (Paddy McNair 69), Chris Smalling, Daley Blind, Matteo Darmian (Antonio Valencia 46), Michael Carrick (Bastian Schweinsteiger 60), Morgan Schneiderlin, Juan Mata, Memphis Depay, Anthony Martial, Wayne Rooney (c)
Unused substitutes: Sergio Romero, Ashley Young, Ander Herrera, Marouane Fellaini
Goals: Martial (35) & (50), Mata (68)
Referee: Mark Clattenburg
Attendance: 31,588 (including 3,164 away)