Romelu Lukaku's second-half double, including a late winner, saw Manchester United come from behind to beat Southampton 3-2 and maintain their top-four hopes.
The Saints took the lead midway through the first half when Yan Valery strode forward and unleashed a 25-yard drive that flew through a startled David de Gea at his near post for his first goal for the club.
Man Utd: De Gea (6), Shaw (7), Lindelof (6), Smalling (7), Young (6), Pogba (6), Pereira (8), McTominay (6), Alexis (6), Lukaku (9), Rashford (7)
Subs: Fred (7), Dalot (8), Chong (6)
Southampton: Gunn (8), Yoshida (6), Vestergaard (7), Bednarek (6), Valery (7), Bertrand (8) Romeu (7), Hojbjerg (7), Ward-Prowse (8), Redmond (7), Austin (6)
Subs: Gallagher (6), Armstrong (6)
Man of the match: Romelu Lukaku
However, the home side responded with impressive strikes from Andreas Pereira (53) and Lukaku (59) before the hour-mark, only for Southampton to hit back through James Ward-Prowse's delicious free kick 15 minutes from time.
But Lukaku was on hand to snatch United a vital victory with just two minutes to go, before Paul Pogba's late penalty was kept out by Angus Gunn's outstretched foot.
Ole Gunnar Solskjaer's team move back up to fourth in the table, a point above Arsenal, while the visitors remain in 17th, two points clear of Cardiff, who also lost on Saturday afternoon.
United started like a train and could have been ahead inside three minutes were it not for an excellent save from Gunn, who got down well to turn Lukaku's low drive behind for a corner.
The increasingly busy Saints goalkeeper also had to be alert to deny Pereira, then Lukaku again, before the visitors stunned the United faithful by opening the scoring after 26 minutes.
There appeared little danger as Charlie Austin rolled the ball out to Valery, striding forward down the right from his wing back position. However, the Frenchman had other ideas as he beat De Gea with a long-range thunderbolt reminiscent of Fabian Schar's stunner for Newcastle against Burnley in midweek.
United came out a different team after half-time, though, drawing level through Pereira's impressive 30-yard curler - the Brazilian's first Premier League goal - before Lukaku's tidy finish gave them the lead.
United made two changes from the team that won 3-1 at Crystal Palace on Wednesday. Marcus Rashford and Andreas Pereira started, with Diogo Dalot and Fred both dropping to the bench. But this game came too soon for Anthony Martial, who had yet to recover from a groin injury.
The Saints were unchanged from the team that beat Fulham 2-0 at St Mary's on Wednesday. So that meant Danny Ings, Michael Obafemia and Mario Lemina were all still missing with injury.
However, the Saints would not lie down as Ward-Prowse gave England boss Gareth Southgate another gentle nudge after beating De Gea with a beautifully struck free kick from the edge of the area.
But with both sides going in search of a winner in the final quarter of an hour, it was the hosts who claimed the spoils after their Belgian striker beat Gunn with a shot into the corner of the goal, making Pogba's injury-time penalty miss irrelevant.
- United have come from behind to win nine Premier League matches against Southampton, an outright record in the competition
- Since Solskjaer took charge, Man Utd have won at least five more Premier League points than any other side (32)
- Southampton are the first away team to score two goals from outside the box in a Premier League game at Old Trafford since Man City in September 2009
- Utd striker Lukaku has been involved in 11 goals in his last 11 Premier League appearances against Southampton (9 goals, 2 assists)
- Pereira became the first Brazilian to score and assist in a Premier League game for Manchester United since Anderson in May 2011 vs Blackpool
- Valery scored his first ever goal for Southampton in what was his 16th appearance in all competitions
- Southampton's Ward-Prowse has scored five Premier League goals this season, more than in any other campaign in the competition
9 - Against no side has Romelu Lukaku scored more Premier League goals than he has versus Southampton (9 - level with West Ham). Routine.— OptaJoe (@OptaJoe) March 2, 2019
Solskjaer: "The manner of it is like the old days. I've been part of that so many times myself. So pleased for the boys that they managed to claw three points out of this game.
"We spoke about at half-time, just get some more urgency get the ball in the box, play more forward and the Stretford End will suck the ball in for you.
"Don't want to take much away from Andreas and Romelu's great finishes but we felt that support is just part of this club, this history, done it so many times before."
Hasenhuttl: "First half there were two situations for a penalty and I think maybe he can give one and then the game is in a completely different way.
"In the second half the goal was offside. Very close but it was and with VAR maybe the result will be a different one."
Man of the match - Romelu Lukaku
The frontman has endured a tough campaign, but he was back to buccaneering best at Old Traffford on Saturday to help turn the game around for United after the break.
The Belgium international was unfortunate not to open the scoring early on, but was not to de denied against one of his favourite opponents in the second half.
The 25-year-old levelled matters with an excellent finish, before winning it late on from outside the box, meaning he now has nine Premier League goals against the Saints.
Pundit - Charlie Nicholas
Sky Sports pundit Charlie Nicholas says Solskjaer's United benefited from some good fortune in their 3-2 win against Southampton.
United take on Paris Saint-Germain looking to overturn a 2-0 first-leg deficit in their Champions League last-16 tie in Paris on Wednesday night, before then facing Arsenal at the Emirates in the Premier League a week on Sunday in a match you can see live on Sky Sports.
Live Renault Super Sunday
Meanwhile, Southampton come up against Champions League-chasing Tottenham Hotspur at St Mary's in the league next Saturday afternoon.