New York City FC reach the MLS Cup for the first time in team history thanks to a 2-1 win away against the Philadelphia Union on Sunday.
Goals from Maxi Moralez and Talles Magno were enough to seal the Pigeons' trip to Portland next weekend, canceling out an Alexander Callens own goal just after the hour mark.
Had you simply tuned in for the first half, you'd have been totally unaware of the drama to come. Both sides seemed content to feel each other out rather than truly commit, with little in the way of meaningful chances. The Union's 11 absentees clearly disrupted their rhythm, while NYCFC missed the focal point of Taty Castellanos.
But the second half turned the game on its head, with both sides trading blows practically from the first whistle. The Union drew first blood with a brilliant Daniel Gazdag delivery being turned home by the unfortunate Callens. But his teammates dug him out almost immediately, with Moralez firing home from close range just two minutes later.
Despite plenty of intent, the two sides struggled to make another breakthrough and extra-time loomed. But this is MLS, things rarely pan out how you expect them to. Philly right-back Olivier Mbaizo was guilty of ball-watching, with Gudmundur Thorarinsson stealing in and setting up Talles Magno for a dramatic late winner.
Here are the full player ratings for Saturday's dramatic encounter...
Philadelphia Union player ratings
1. Goalkeeper & defenders
Matt Freese (GK) - 7/10 - Looked at fault for the NYCFC equalizer at first glance, but upon further viewing, Chanot's effort took a wild swerve that would catch any goalkeeper out. Made a couple of big saves afterwards.
Olivier Mbaizo (RB) - 4/10 - The only regular in teh backline, Mbaizo put in a real shift for the Union. He simply has to be marked right down for his mistake on the NYCFC winner.
Stuart Findlay (CB) - 7/10 - A solid afternoon, kept Heber completely quiet in the opening hour.
Aurelien Collin (CB) - 8/10 - Thrown in after not playing a senior game since 2019 and was excellent throughout.
Nathan Harriel (LB) - 7/10 - A strong, active afternoon on both sides of the ball for the youngster.
Jack McGlynn (CM) - 6/10 - Couldn't really get into the game on the ball but put in a good defensive shift.
Jose Martinez (CM) - 7/10 - Made some good driving runs from midfield and coordinated a very effective Union press.
Leon Flach (CM) - 7/10 - The Union needed a cool head and plenty of energy in midfield with so many absences. Flach provided both. Also tested Johnson with a powerful shot right after half-time.
Jamiro Monteiro (CAM) - 8/10 - Was a good creative outlet for Philadelphia and forced a number of mistakes from NYCFC defenders with his quick closing down.
Daniel Gazdag (CAM) - 8/10 - Set up Flach for that effort early in the second half and then delivered a wonderful ball into the box for the Callens own-goal.
Kacper Przybylko (ST) - 8/10 - Battled hard against the NYCFC center-backs, winning a match-high five aerial duels. Also made a great run to force an own goal out of Callens to make it 1-0.
Jesus Bueno (for McGlynn, 75 mins) - 5/10 - Unable to affect the game.
Anthony Fontana (for Harriel, 90 mins) - N/A - Brought on too late to change the game.
Paxten Aaronson (for Flach, 90 mins) - N/A - As above.
New York City FC player ratings
5. Goalkeeper & defenders
Sean Johnson (GK) - 6 /10 - Could do little about the Callens own goal, made a couple of decent saves.
Tayvon Gray (RB) - 6/10 - Has plenty of quality on the ball for such an inexperienced player. Relatively solid defensively but lost Harriel for a header late in the second half, luckily going unpunished.
Maxime Chanot (CB) - 7/10 - Delivered the wicked shot which eventually led to the Moralez equalizer and was solid at the back.
Alexander Callens (CB) - 7/10 - Was an absolute giant at the back and has only been marked down thanks to scoring an own goal.
Malte Amundsen (LB) - 5/10 - Tried to provide NYCFC with an attacking outlet down the left but was too sloppy with his final ball.
James Sands (CM) - 7/10 - Finished the game with a remarkable 92% pass completion rate, which is remarkable considering how high the Union pressed for the ball. Looks more and more ready for that jump to Europe.
Alfredo Morales (CM) - 7/10 - Tidy on the ball and got through a lot of defensive work.
Maxi Moralez (CAM) - 9/10 - Came to life in the second half, not only scoring the equalizer, but popping up all over the pitch to pull the Union out of shape. Father time is struggling to keep up with Moralez.
Jesus Medina (RW) - 6/10 - Had a couple of dangerous moments, including a shot early in the second half that was well-saved by Freese. But it wasn't his best day.
Heber (ST) - 4/10 - Looked well off the pace and was an obvious choice to be replaced early in the second half.
Santiago Rodriguez (LW) - 6/10 - Not his most effective game but still had a few dangerous moments.
Gudmundur Thorarinsson (for Amundsen, 58 mins) - 8/10 - Refined NYCFC's delivery from the left and did brilliantly to steal the ball and set up Talles Magno for the winner.
Talles Magno (for Medina, 58 mins) - 8/10 - Scored the biggest goal in NYCFC history to date.
Ismael Tajouri-Shradi (for Heber, 58 mins) - 7/10 - Gave NYCFC a new dimension with his trickery and direct running.