The forward had been left out of the line-up due to a disciplinary matter but he came off the bench to dart infield and power in the winner with a little over 10 minutes remaining, before his work rate and determination ended in another late strike which was ruled out for handball.
Alejandro Garnacho had the first big chance of the game after intercepting a short pass back to Jose Sa, but the Wolves stopper reacted well.
Antony also had a close-range opportunity, while Wolves were typically blunt despite some good approach play, with Ruben Neves’ free-kick the closest they came to scoring before Rashford won it for the visitors with his late hit.
Here are the player ratings from the game on New Year’s Eve.
Jose Sa - 8. Huge save one-on-one from Garnacho in the opening quarter of the match then again scrambled a late chance away from goal before the interval. Was mostly untroubled second half until Rashford put one through his legs.
Nelson Semedo - 5. Got very fortunate after a woeful short backpass. Booked soon after for a back-tracking foul too. Did fare better in his one-vs-ones and made an important aerial clearance before being subbed.
Nathan Collins - 8. Very reliable in repelling crosses and a few low balls, always alert to runners from the second line and holding Wolves’ shape. Lovely surging dribble through midfield in the second half too.
Max Kilman - 7. Alongside Collins had another fine outing at the back. Made a couple of vital interceptions, stepping across to block off passes. Consistently strong in holding off forwards.
Hugo Bueno - 6. Had a good first half when he burst forward to relatively good effect, putting a few crosses in and keeping Antony at bay, but faded as an outlet and was replaced for a formation switch.
Ruben Neves - 7. Nothing unexpected from the deep man in midfield: good switches of play, a few good challenges to break up play and two long-range free-kicks, one which tested the keeper and the other did not.
Joao Moutinho - 5. Didn’t really offer much in either defensive or attacking regard. Shifting the ball on and holding his ground in deep areas is fine, but he was neither a ball-winner nor chance provider and overrun too easily.
Matheus Nunes - 7. Very good for Wolves in terms of progression up the pitch and ball-carrying, but the final pass was lacking a little at times. Took a few big hits along the way.
Daniel Podence - 7. Again, a good performer but not a great one, and Wolves needed one in the final third. Dribbled through a number of challenges, took fouls for the team and gave them an outlet, but wasn’t a goal threat.
Diego Costa - 7. Made a big nuisance of himself as usual even if he didn’t really threaten off crosses. His hold-up play was good though and worked space for a shot once or twice. Surprise that he was subbed at the break, perhaps due to an injury.
Hwang Hee-Chan - 5. Hard-working and ran the channels non stop, but didn’t actually seem to be involved in any build-up play in the final third. No shots, which sums up Wolves’ attack.
Subs: A Traore 7, Jonny 5, Ait-Nouri 6, Toti 5, Jimenez n/a
David de Gea - 7. Wasn’t really troubled in the first half but made a fine save from Neves’ free-kick around the hour. Watched the rest of the match from a distance until stoppage time when he made a reaction save on his line.
Aaron Wan-Bissaka - 6. Solid enough defensively when Podence was wide, though never looked to track him when drifting infield. Didn’t offer anything going forward but was never going to give Wolves an easy route into the box.
Raphael Varane - 8. Nothing got past him at all. Didn’t have lots of non-stop action, but his concentration and positional work was excellent. A late flicked header away from a dangerous cross was a prime example of his effect.
Luke Shaw - 7. Centre-back again and good resilience against the ground-and-air assaults of Costa. Stood firm to block a Neves half-volley too.
Tyrell Malacia - 7. A little rash at times but made the challenges and interceptions which mattered most.
Casemiro - 6. Not his finest game. On the ball work was fine, without being spectacular, but defensively he was run past several times. Lucky to escape a booking first half, was shown a yellow eventually and didn’t really protect the back line from a late barrage.
Christian Eriksen - 6. Neat and tidy in deep areas. Didn’t offer the ball progression at the speed of play Ten Hag would have wanted.
Antony - 5. Very quiet in the first 45 and should have scored right before half-time, heading into the keeper from two yards out.
Bruno Fernandes - 6. Always available to receive play and definitely pushed his team upfield at times, but the execution and decision-making was badly lacking in his end product.
Alejandro Garnacho - 7. Should have scored after getting that big early chance off the backpass, but was United’s best outlet first half. Surprisingly subbed at the break.
Anthony Martial - 5. The match completely passed him by. Had a couple of weak shots but nothing to polish his reputation as the go-to starting striker.
Subs: M Rashford 8, Fred 6, D van de Beek n/a, H Maguire n/a, A Elanga n/a