Yan Valery had given Southampton a surprise lead with an outstanding finish from around 25 yards in the first half before Manchester United midfielder Andreas Pereira equalised with a spectacular long-range strike early in the second half.
Pereira then set up Romelu Lukaku to make it 2-1 for Manchester United but the Saints fought back to make it 2-2 through a James Ward-Prowse’s free-kick. Lukaku made sure Manchester United took all three points by scoring a dramatic winner.
Paul Pogba missed the chance to make it 4-2 in stoppage time as his penalty was saved by Southampton goalkeeper Angus Gunn.
Southampton boss Ralph Hasenhuttl believes his team didn’t deserve to lose to Manchester United.
“The team deserved more than to be defeated today,” Ralph Hasenhuttl told BBC Sport.
“They made a fantastic game and tactically we were very good. The first half was very good and played a brave performance. The team showed they wanted to get something.
“We maybe could have had two penalties and at 2-0 up it would be much more difficult for Man United. We were defeated by a fantastic Romelu Lukaku.
“We never stopped playing for a point and feeling we could get something out of the game.
“The players felt there was something possible here but it was disappointing in the end. Nobody asks how we lost, for me it would be better if we did not play as good and got a point. We made the fans proud today.
“If we stay working and playing like this, focusing on clean sheets, we showed we can score.”