Garnacho came off the bench moments after Diogo Dalot's own goal had given Villa their second lead of the night at Old Trafford but, after Marcus Rashford equalised for the hosts, Garnacho got two assists as Bruno Fernandes put them in front before Scott McTominay sealed it late on.
The 18-year-old Argentinian had the Old Trafford faithful off their seats every time he got on the ball.
He set up Fernandes when Robin Olsen spilled a cross into his path in the 78th minute, then picked out McTominay with a deep cross from the left in stoppage time.
Garnaco scored his first senior goal in United's 1-0 win over Real Sociedad last week and it is clear fans wants to see more of him, but he was held back by Ten Hag after missing meetings during the club's pre-season tour, and the boss once again laid down a marker over his attitude.
"It was good that he came on and showed that performance and had that impact in the game, to be able to assist, make the dribbles and run behind," Ten Hag said.
"There are some things he has to improve, for instance when we go long to go for the second balls. He still has things to learn but quite obviously we are happy with his development and he can contribute to the team.
"It depends on his approach, his attitude. When he keeps working then yes, it is possible (for him to play more). He wants to improve every day. He has to do the right things in his lifestyle. He has the capability."
Thursday's win sets up a last-16 clash at home to Vincent Kompany's Burnley, and also gives United a measure of revenge for Sunday's 3-1 defeat at Villa Park - United's first loss since the derby defeat to Manchester City on October 2.
Both sides were flat in a poor first half, but the match came to life after the break and Ten Hag was pleased with the spirit shown by United as they twice came from behind.
"The fighting spirit was back," he said. "The players are not robots, I know that but what I can't accept is that you get beaten like on Sunday. It was quite clear, the reaction from the team today.
"To go down and fight like this I see progress in our attitude and mentality. We are going in the right direction."
Villa's 3-1 win at the weekend marked Unai Emery's first game in charge, but the Spaniard had to mark his second down as a learning experience as his side were twice unable to hold the lead.
They went in front through Ollie Watkins in the 48th minute but allowed Anthony Martial to level within seconds, and the lead given to them by Diogo Dalot's 61st minute own goal only lasted six minutes before Rashford struck.
"For 75 minutes we competed well and we were having chances," he said. "In the last 15 minutes was the moment we lost a little bit our mentality. We have to improve and work on this in the days before the match against Brighton.
"I learned a lot because the players gave me a lot of information in the performance. I am not 100 per cent happy with the performance on Sunday and not with tonight but I think in both matches there were more good things than bad."