Rasmus Holjund scored his first goal for Manchester United since joining this season against Aston Villa on Boxing Day.
The Red Devils came from a 2-goal lag to record a beautiful comeback win at Old Trafford.
First-half goals from John McGinn and Leander Dendoncker had seemingly put Unai Emery’s in-form side ahead and ready to take all three points. But two goals from Garnacho and a goal from Holjund were enough for United.
There were six offside decisions against Manchester United in the first half alone, another record for the Premier League season.
The £72m summer signing has had to wait until his 15th Premier League appearance for this goal and he got it.
The three points lift Manchester United to sixth in the Premier League table, while Aston Villa stay third, missing a good chance to level points with League leaders Liverpool.
Player ratings
Man Utd: Onana (6), Wan-Bissaka (6), Varane (6), Evans (6), Dalot (6), Mainoo (7), Eriksen (6), Fernandes (7), Rashford (7), Hojlund (7), Garnacho (8).
Subs: Antony (7), McTominay (n/a), Kambwala (n/a), Gore (n/a), Mejbri (n/a).
Aston Villa: Martinez (6), Konsa (6), Carlos (5), Lenglet (5), Digne (6), Douglas Luiz (6), McGinn (7), Dendoncker (6), Bailey (6), Ramsey (6), Watkins (5).
Subs: Moreno (5), Diaby (n/a), Zaniolo (n/a), Duran (n/a), Iroegbanum (n/a).
Player of the match: Alejandro Garnacho.