Marcus Rashford combined with Jadon Sancho to give United a 1-0 lead in the 21st minute, following a build-up play down the left that saw the former make a cross across goal for a simple tap in.
Mohammed Elyounoussi continued his run in the team by setting up Adams for the leveller with a perfectly weighted through ball and the forward calmly found the far corner with a right-footed shot for his sixth Premier League goal of the campaign and fourth away from home.
Stuart Armstrong thrashed an effort wide, before Armando Broja forced a diving save that was earmarked for the top corner with Saints searching for a goal to break the deadlock.
At the other end, Forster did his duty to preserve the draw by making a foot-save from point-blank on Harry Maguire and then he denied Bruno Fernandes at his near post.
Forster ensured Saints left Old Trafford with a point, making a reactionary save to beat away Maguire’s header deep into added time.
Manchester United (4-2-3-1): de Gea; Shaw, Maguire, Varane, Dalot; Pogba, McTominay (Elanga 78); Sancho, Fernandes, Rashford (Lingard 82); Ronaldo
Unused subs: Henderson (GK), Mejbri, Jones, Wan-Bissaka, Lindelof, Mata, Telles
Goals: Sancho (21)
Bookings: Rashford (16), McTominay (31), Pogba (85), Lingard (90)
Southampton (4-4-2): Forster; Perraud, Salisu, Bednarek (Stephens 46), Walker-Peters; Elyounoussi (Livramento 71), Romeu (Diallo 90+5), Ward-Prowse, S. Armstrong; Adams, Broja
Unused subs: Caballero (GK), Long, A. Armstrong, Djenepo, Valery, Smallbone
Goals: Adams (48)