Crazy drama in the final few minutes at the London Stadium saw Jesse Lingard break West Ham hearts and Mark Noble MISS a penalty in the final seconds.
Lingard had scored a genuinely brilliant goal in the final minute of the game, sending a phenomenal strike into the top corner after cutting in from the left wing, having been applauded on as a substitute.
But West Ham had a golden chance to rescue a point in the final minute of injury time, as Luke Shaw was adjudged to have handled the ball after a cross.
David Moyes made the bold decision to sub Noble on purely to take the kick, but David de Gea saved, and United took all three points.
West Ham did actually take the lead, as Said Benrahma took aim from range and saw his shot deflected by Raphael Varane and into the bottom corner, leaving David de Gea rooted.
Both sides had chances before that, with Jarrod Bowen going close for the Irons, and Lukasz Fabianski making a fantastic save to deny Bruno Fernandes and push his shot onto the post.
Cristiano Ronaldo, perhaps inevitably, scored the equaliser before half-time, tapping home the rebound after his initial volley from Fernandes’ cross was saved by Fabianski.
Vlasic had a golden chance to restore the Hammers’ lead, as he met Aaron Cresswell’s cross but the effort flew well over the bar.
The second half saw United have more of the ball but the period was dominated by two penalty shouts. Tomas Soucek went down first, under the challenge of Aaron Wan-Bissaka, but the referee gave the decision to United, despite no flag from the linesman.
Ronaldo took a number of tumbles in the box in the second half, but perhaps the most convincing came after Lingard’s goal, as Zouma scythed him down in the box, but the referee was unmoved.
West Ham still had time to go up the other end and win the penalty but Noble, unbelievably, missed.