A Bruno Fernandes double had put Ralf Rangnick's dominant Reds in total command, but the introduction of the ex-Liverpool string puller turned the tie and led to their unlikely climb-off-the-canvas fightback.
Villa should've been down to ten in the first half for Lucas Digne's late, clumsy, lunge on Diogo Dalot but Jacob Ramsey thumped in on 77 minutes and then turned provider for his new team-mate four minutes later to salvage an unlikely point.
Quite how Manchester United failed to win this thriller at the Villa only they will know. If ever a game with a 2-2 scoreline can be described as a thrashing, then it would be this one. United were dominant for long periods and should have been out of sight by the time Ramsey pulled a goal back. Whilst you would definitely have taken a point beforehand, the dramatic twist in the tale leaves you feeling like this was a loss.
United had beaten the same Villa side in the FA Cup five days hence and made changes from the third round tie. With Luke Shaw and Scott McTominay suspended, Alex Telles and Nemanja Matic returned to the XI whilst Anthony Elanga was handed a start on the left of midfield with Marcus Rashford absent in a slightly understrength side.
Just as they did in the FA Cup tie on Monday, United started strongly and went ahead inside six minutes albeit in slightly fortuitous fashion. A training ground routine involved Alex Telles and Fernandes as the former found the latter and he let fly from distance. Villa goalkeeper Emi Martinez should have made a routine save but instead fumbled the ball over the line and in. Elanga nodded wide and Mason Greenwood was denied by Martinez who redeemed himself with a smart save to deny the United winger.
Another Villa debutant, left-back Lucas Digne, could then count himself fortunate to stay on the field after he was only booked for a lunging challenge on Dalot, having clattered into Fred moments earlier.
The busy Martinez pushed clear from Telles, but De Gea was then called into action at the other end to keep out Ollie Watkins.
Greenwood flashed a shot wide and Edinson Cavani also went close with a header before De Gea saved smartly from Emi Buendia after he was picked out by the reprieved Digne.
Elanga carried a threat and forced another stop from Martinez, who was doing his best to atone for his early error. In an increasingly end-to-end contest, this time it was Villa to go close through Ramsey as our Spanish stopper pushed away his low effort from inside the box.
Greenwood fired into the side netting and Elanga was narrowly off target, but United's all important second goal arrived on 66 minutes. Fred dispossessed Morgan Sanson under the press and the little Brazilian found Fernandes to fire in an excellent finish off the bar.
De Gea cleared well having been put under pressure by an errant Matic backpass, but with time running out Ramsey reduced the deficit as he found space to fire in beyond De Gea and set up a grandstand finish.
The comeback was complete four minutes further on as Ramsey this time turned provider. Villa broke down the left and Ramsey pulled the ball back, the sliding Raphael Varane missed it, and Coutinho - of all people - swept home the leveller.
Yet there was more to come as either side chased the winner. De Gea stopped again from Coutinho and, at the other end, Martinez stood tall to beat away a shot from United sub Donny van de Beek.
In the end, the points were shared after an exciting tussle in the Midlands with United on the road again at Brentford on Wednesday.
Overall team performance: 6/10
United Faithful Man of the Match: Bruno Fernandes