Gareth Barry opened the scoring in the 12th minute when he volleyed home Wayne Bridge's cross and Jermain Defoe added a second four minutes later.
The Portsmouth striker grabbed his second and England's third in the 49th minute when he stabbed home from close range after David Bentley had delivered a dangerous cross from the right.
Beckham was substituted at half-time after a solid first-half performance and passed the armband to Barry.
"I was surprised and didn't expect it," Beckham told BBC1.
"But I'll always answer the call and be available for my country and captain them as well - it was a surprise but I am honoured to do so."
Beckham admitted Fabio Capello had demanded a professional performance from England's players but said focus must now switch to the World Cup qualifying campaign.
"It was a tough performance and the manager was telling us before the game that even though it was a friendly we had to take it seriously," he added.
"It was the centenary game for them but they wanted to beat England and we had to put in a good performance and I think we did that.
"The players in the camp are motivated and whether we have got experienced players or young players we have to play as one.
"The respect is there [for Capello] and there for one another and that is how it needs to be and the qualifiers are the big thing for us now."