MLS All-Stars beat West Ham
© AFP

David Beckham was a winner in his first Major League Soccer All-Star Game on Thursday, the English midfielder helping the MLS All-Stars to defeat England's West Ham United 3-2.

Dwayne De Rosario netted a penalty in the 69th minute for the winner as the MLS select lineup maintained its perfect record against international foes since the format began in 2003.

Christian Gomez and Cuauhtemoc Blanco scored first-half goals for the MLS squad, while Dean Ashton netted both goals for West Ham United before a sellout crowd of 20,844.

MLS teams have defeated Mexico's Chivas of Guadalajara, England's Fulham and Chelsea and Celtic of Scotland in prior all-star matchups.

The Hammers opened the scoring in the 26th minute when Ashton ran onto a through ball from Carlton Cole and blasted a right-footed shot into the net. But West Ham's lead lasted less than a minute, with Beckham playing the ball to Blanco, who back-heeled it to Gomez, who blasted the ball past goalkeeper Robert Green.

Beckham had his first free-kick chance in the 39th minute from 30 metres when Blanco was fouled, but the ball was cleared by Hammers captain Lucas Neill after curling around the wall.

Mexico's Blanco lifted the MLS lineup to a 2-1 half-time lead with a goal in the 44th minute, zipping a right-footed shot through a jumble of players and inside the far post. West Ham drew level in the 67th minute, when Ashton blasted in a shot off a defender's head.

Again the North American side answered, Houston midfielder De Rosario being brought down in the box by Neill in the 70th minute. De Rosario booted the ball in off the crossbar for the decider.

Former Aston Villa striker Juan Pablo Angel found the net seconds later, but was called offside.