David Beckham treated the fans to what they came to see, flashing his trademark smile and curling free-kicks to lead the Major League Soccer all-stars to a 3-2 win over West Ham United on Thursday night.

Beckham and his team-mates had insisted the game against the Premier League side was much more than a friendly for MLS as it continues its bid to be recognised as a quality league.

But the result seemed secondary in a carnival atmosphere at BMO Field in front of a stadium record crowd of 20,844.

"Every player out there was committed to winning the game, we took it seriously," Beckham told reporters. "We wanted to win and we did that."

Canadian soccer fans had waited nearly a year to catch a glimpse of the sport's most famous player, who was supposed to have launched his MLS career with the Los Angeles Galaxy in Toronto last August but missed out due to a sprained ankle.

The England midfielder played a full 90 minutes against West Ham and nearly scored on several occasions, including a right-foot strike from just inside the penalty area that clipped the crossbar.

Mexican international Cuauhtemoc Blanco, Christian Gomez and Dwayne De Rosario from the penalty spot scored for MLS. Striker Dean Ashton claimed both West Ham goals.

It was the fifth time the MLS all-stars had beaten foreign opponents. They overcame Mexico's Guadalajara in 2003, Fulham in 2005, Chelsea in 2006 and Celtic last year.

"The reason for the game was for the MLS to show off their riches and their talent and they've done that," West Ham manager Alan Curbishley said. "They showed they can compete.

"The Major League Soccer, and not just because of David Beckham, is gaining momentum week in and week out in Europe."

Sign up to our free newsletters

Get the best updates straight to your inbox:
Please select at least one mailing list.

You can unsubscribe at any time by clicking the link in the footer of our emails. We use Mailchimp as our marketing platform. By subscribing, you acknowledge that your information will be transferred to Mailchimp for processing.