The Gunners attempted to start the match with 12 men when Nigerian striker Kanu didn’t realise he had been named as a substitute, but the 40-year-old made up for his mistake when he scored a header from Emmanuel Petit’s cross on 27 minutes, before Milan’s Christian Vieri equalised with a scrappy effort five minutes before the break.
Kanu scored a second on 72 minutes before Pires got in on the act just a day after playing at the Wembley Cup, while Vieri netted a late consolation for Milan when he rebounded in a penalty which was well saved by David Seaman.
Related: Nwankwo Kanu backs himself to score a hat-trick in Arsenal Legends charity match against AC Milan
Highlights included Martin Keown begging Arsene Wenger to bring him on throughout the match and Nigel Winterburn squaring up to Paolo Di Canio in a mock incident of when the Italian confronted a referee against Sheffield Wednesday in September 1998.
Robert Pires, Freddie Ljungberg and Kolo Toure all featured for the home side while Wenger and Fabio Capello took charge of the respective squads in a match which is expected to raise £1 million for the Arsenal Foundation’s mission to build pitches for children in London, Jordan and Somalia.