The New York Red Bulls ended Dallas' unbeaten run in MLS, while Sporting Kansas City staged a comeback to win Saturday.

Dallas' unbeaten league run was ended at seven with a 3-0 loss to the Red Bulls in Harrison, New Jersey.

Bradley Wright-Phillips tapped in a Tyler Adams cross midway through the first half for the opening goal, before the game appeared to turn in the visitors' favour.

Red Bulls midfielder Daniel Royer was sent off for a studs-up challenge on Jacori Hayes just minutes after the goal.

But it was the 10-man hosts who struck next, Aaron Long volleying in a Sean Davis corner.

New York made it 3-0 shortly after the break, Kemar Lawrence's strike beating Jesse Gonzalez at the Dallas goalkeeper's near post.

Reto Ziegler was sent off late for Dallas after kicking out at Lawrence, closing out a miserable outing for his team.

The Red Bulls climbed into second in the Eastern Conference, while Dallas are second in the west.

Sporting Kansas City came from 2-0 down to record a 3-2 win at home to the Houston Dynamo.

A first-half brace from Mauro Manotas had Houston in control at Children's Mercy Park, but Sporting rallied.

Daniel Salloi pulled the first goal back in the 59th minute and the hosts left it late to complete their comeback.

Diego Rubio equalised with five minutes remaining, and Houston were down to 10 men when Eric Alexander saw red.

Salloi – who set up Rubio's goal – then found Khiry Shelton with a cutback for the match-winner as Sporting moved three points clear atop the Western Conference.

Elsewhere, Philadelphia Union thrashed the Vancouver Whitecaps 4-0, Montreal Impact were 2-0 winners over Orlando City and Los Angeles FC beat Columbus Crew 2-0.

The Colorado Rapids edged Minnesota United 3-2, the Seattle Sounders drew 1-1 with Chicago Fire and Real Salt Lake were held to a 1-1 draw by the San Jose Earthquakes.