Robbo made one fine save from Arjen Robben in the first half as England took a 1-0 lead at half-time through Wayne Rooney. It looked like it would stay that way until van der Vaart's strike in the 86th minute. Michael Dawson and Jermain Defoe were unused substitutes at the Amsterdam ArenA.
Elsewhere, Dimitar Berbatov wore the captain's armband for Bulgaria but it was a night to forget for the striker as they went down 3-1 in a friendy in Slovakia.
Hossam Ghaly played for 61 minutes as Egypt beat South Africa 1-0 in a friendly staged at Brentford's Griffin Park while Didier Zokora came on for the second half of Ivory Coast's 1-0 friendly win against Sweden in Le Mans, France.
Marton Fulop was an unused substitute for Hungary against Canada while Reto Ziegler started as Switzerland Under-21s beat Slovenia 4-1 in a friendly.
Paul Robinson earned his 32nd cap for England but was denied a 10th clean sheet in 12 internationals by Rafael van der Vaart's late goal in the 1-1 draw against Holland on Wednesday night.