Argentine World Cup winner Thiago Almada produced a virtuoso performance and scored twice as Atlanta United beat Portland Timbers 5-1 in Major League Soccer on Saturday.

New boys St.Louis City became the first expansion franchise in MLS history to win all four of their opening games after beating San Jose 3-0.

Montreal scored twice in the final minutes for a stunning 3-2 comeback win over last season's runners-up Philadelphia Union while New York City survived a late rally from Wayne Rooney's D.C. United to emerge with a 3-2 win.

The 21-year-old Almada has quickly establishing himself as the most exciting player to watch in the North American league and after his brilliant injury time free-kick in the opening week he went one better against the Timbers.

Teenager Caleb Wiley had put Atlanta ahead with a composed finish in the 25th, but on the stroke of half-time Almada struck a pearl of a free-kick from almost 30 yards out into the top corner of the goal.

Greece’s former Celtic striker Giorgos Giakoumakis added the third with a firm header from a pinpoint Wiley cross before midfielder Almada set up Brazilian Luiz Araujo to make it 4-0.

Portland pulled a goal back through Tega Ikoba before Almada completed the rout, crowning his match-winning display by turning on the edge of the box before placing the ball in the bottom corner.

St.Louis made history in their second home game since entering the league as they extended their 100% record with another impressive display.

Nicholas Gioacchini put the home side ahead in the 34rd minute before a solo effort from Brazilian Joao Klauss doubled the advantage on the stroke of half-time.

Czech Tomas Ostrak struck the third, with a slightly deflected shot from outside the box as the league's 29th club continued their dream start.

Montreal stun Philly

Montreal had lost their opening three games before the visit of Philadelphia, but Honduran Romell Quioto gave them a third minute lead from the penalty spot.

The Union roared back, with two well-taken goals from Danish forward Mikael Uhre either side of the interval putting them in charge.

The game turned though in the 69th minute when Philadelphia's Julian Carranza was sent off after a second bookable offence, leaving his side to defend their lead with 10 men.

Nigerian forward Chinonso Offor bundled in an equalizer in the 90th minute before, in the eighth minute of stoppage time Quioto headed in a dramatic winner at the back post.

New York City went in 2-0 up at half-time against D.C thanks to goals from Brazilian Talles Magno and Uruguayan Santiago Rodriguez.

But a header from Belgian Christian Benteke brought the visitors back into the game.

Thiago Andrade restored New York's two goal advantage in the 88th minute only for a Steve Birnbaum header from a corner to give United a glimmer of hope.

Birnbaum had a chance to level in stoppage time but this time couldn't get his header on target as NYC picked up their second win of the campaign.

After winning their first two games, both at home, Inter Miami suffered another reverse on the road with second half goals from Jonathan Osorio and Mark-Anthony Kaye earning the three points for Toronto at a chilly BMO Field.

Seattle dominated for large parts against LAFC with Slovak Albert Rusnak striking the post but the home side lacked sharpness in front of goal.

A point against the champions is no disgrace but Sounders coach Brian Schmetzer was far from happy with the outcome.

"No. We needed to do better at home. We needed to take some of the half-chances, the build-up that was almost there, and create more full chances. And then perhaps we would have scored the goal," he said.

Orlando City, knocked out of the CONCACAF Champions League by Mexico's Tigres in midweek, suffered a blow with a 2-1 home loss to Charlotte who had Argentine Enzo Copetti and Colombian Kerwin Vargas on target.