Tayvon Gray provides late winner for NYCFC in road win over Philly

New York City FC (NYCFC) snatched all three points away from Philadelphia at the death, winning 2-1 away from home on Matchday 2 of the 2026 MLS season.

Bronx-native Tayvon Gray found a free header at the back post in the ninth minute of added time to break Philadelphia hearts after the Pigeons survived a second-half onslaught from the Union. Union defender Olwethu Makhanya was sent off for a second yellow card for dissent right before the extra 10 minutes were added on.

“I’m definitely happy with the goal,” Gray said after the match. “I surprised myself with that one.”

It was a disciplined, smash-and-grab performance from NYCFC after Hannes Wolf opened the scoring in the first half. A soft penalty call on Thiago Martins gave the Union a route back into the game, which Indiana Vassilev duly equalized from.

NYC picked their moments well, though, with both goals. Philadelphia kept coming, but NYC kept hitting them on the counter-attack. They handed Philadelphia its first home-opener loss since 2012.

“We didn’t always defend [the second balls] well enough, but overall I’m pretty pleased,” Pascal Jansen said after the match.

The Boys in Blue survived a lot of Philadelphia pressure in the early stages of the first half. Danley Jean-Jacque saw two opportunities go just wide of Matthew Freese’s goal.

Then came NYCFC. Keaton Parks, who made his first MLS start since May 2025, found Agustin Ojeda in on goal with a line-breaking pass. The Argentine just placed his shot a whisker away from the goal, hitting the woodwork.

The No. 55 started the move for the opening goal 10 minutes later. Aiden O’Neill received the ball under pressure and spun out of the Philadelphia press to send Ojeda down the right wing again.

He played a fine pass for his countryman to run onto through the legs of a defender, and Nico Fernández Mercau saw his left-footed shot parried back into play. It fell to Wolf, and he obliged, giving NYCFC the lead going into halftime.

Wave after wave of Union attack came as the sun set in Chester, PA, and all eleven men in blue helped stave them off. Both Raul Gustavo and Thiago Martins had a pair of headed clearances each as Philadelphia played with more urgency.

Iloski had the Union’s first penalty shout waved off when Gustavo went through the back of him at the top of the box. The ball fell to Nathan Harriel, who sent it into the stands, but referee Chris Penso held the game for a Video Assistant Referee check.

When Penso announced the goal-kick, boos rang out around Subaru Park. The Brazilian was lucky not to be penalized.

Substitutes Ben Bender and Stas Korzeniowski were impactful for Philadelphia’s second-half push. Korzeniowski hit the post with a glancing header in the 75th minute as NYC barely managed to get out of their own half.

The one opportunity they did was when Seymour Reid was sent on his bike to face Andre Blake one-on-one in the 82nd minute. The 17-year-old had half a pitch to run into, but the Philadelphia captain was quick off his line and made himself big. It would have been the sucker punch for the Union if that chance had gone in.

The back-and-forth continued, but a soft penalty call proved to be Philadelphia’s salvation late on. Martins and Korzeniowski were entangled in a duel at the edge of the box, and when the ball was played towards them, Korzeniowski hit the floor.

Vassilev, who Union coach Bradley Carnell brought with him from St. Louis City, dispatched the spot-kick as Subaru Park felt like it breathed a sigh of relief with its celebrations.

The Boys in Blue stayed patient and found their moment to go forward in the last five minutes of injury time. Ojeda made eye contact with Gray for a split second, and the two connected for the winner.

“I’m going against [Agu] nine out of 10 times in training, so I know what he’s capable of,” Gray said.