| Goal | Date | Venue | Opponent | Result | Competition |
|---|
| 1 | 27 May 1998 | Stade Mohamed V,Casablanca | Morocco | 1–0 | 1998 Hassan II Trophy |
| 2 | 22 June 1998 | Stade de Toulouse,Toulouse | Romania | 1–2 | 1998 FIFA World Cup |
| 3 | 30 June 1998 | Stade Geoffroy-Guichard,Saint-Étienne | Argentina | 2–2(3–4 on penalties) | 1998 FIFA World Cup |
| 4 | 14 October 1998 | Stade Josy Barthel,Luxembourg City | Luxembourg | 3–0 | UEFA Euro 2000 qualification |
| 5 | 4 September 1999 | Wembley Stadium,London | Luxembourg | 6–0 | UEFA Euro 2000 qualification |
| 6 | 27 May 2000 | Wembley Stadium, London | Brazil | 1–1 | Friendly match |
| 7 | 20 June 2000 | Stade du Pays de Charleroi,Charleroi | Romania | 2–3 | UEFA Euro 2000 |
| 8 | 2 September 2000 | Stade de France,Paris | France | 1–1 | Friendly match |
| 9 | 24 March 2001 | Anfield,Liverpool | Finland | 2–1 | 2002 FIFA World Cup qualification |
| 10 | 28 March 2001 | Qemal Stafa,Tirana | Albania | 3–1 | 2002 FIFA World Cup qualification |
| 11 | 1 September 2001 | Olympic Stadium,Munich | Germany | 5–1 | 2002 FIFA World Cup qualification |
| 12 |
| 13 |
| 14 | 5 September 2001 | St James' Park,Newcastle | Albania | 2–0 | 2002 FIFA World Cup qualification |
| 15 | 17 April 2002 | Anfield, Liverpool | Paraguay | 4–0 | Friendly match |
| 16 | 21 May 2002 | Jeju World Cup Stadium,Seogwipo | South Korea | 1–1 | Friendly match |
| 17 | 15 June 2002 | Stadium Big Swan,Niigata | Denmark | 3–0 | 2002 FIFA World Cup |
| 18 | 21 June 2002 | Shizuoka Stadium,Shizuoka | Brazil | 1–2 | 2002 FIFA World Cup |
| 19 | 12 October 2002 | Tehelné pole,Bratislava | Slovakia | 2–1 | UEFA Euro 2004 qualification |
| 20 | 29 March 2003 | Rheinpark Stadion,Vaduz | Liechtenstein | 2–0 | UEFA Euro 2004 qualification |
| 21 | 11 June 2003 | Riverside Stadium,Middlesbrough | Slovakia | 2–1 | UEFA Euro 2004 qualification |
| 22 |
| 23 | 20 August 2003 | Portman Road,Ipswich | Croatia | 3–1 | Friendly match |
| 24 | 10 September 2003 | Old Trafford,Manchester | Liechtenstein | 2–0 | UEFA Euro 2004 qualification |
| 25 | 1 June 2004 | City of Manchester Stadium, Manchester | Japan | 1–1 | 2004 FA Summer Tournament |
| 26 | 24 June 2004 | Estádio da Luz,Lisbon | Portugal | 2–2(5–6 on penalties) | UEFA Euro 2004 |
| 27 | 18 August 2004 | St James' Park, Newcastle | Ukraine | 3–0 | Friendly match |
| 28 | 13 October 2004 | Tofik Bakhramov Stadium,Baku | Azerbaijan | 1–0 | 2006 FIFA World Cup qualification |
| 29 | 26 March 2005 | Old Trafford, Manchester | Northern Ireland | 4–0 | 2006 FIFA World Cup qualification |
| 30 | 31 May 2005 | Giants Stadium,East Rutherford | Colombia | 3–2 | Friendly match |
| 31 |
| 32 |
| 33 | 12 October 2005 | Old Trafford, Manchester | Poland | 2–1 | 2006 FIFA World Cup qualification |
| 34 | 12 November 2005 | Stade de Genève,Geneva | Argentina | 3–2 | Friendly match |
| 35 |
| 36 | 3 June 2006 | Old Trafford, Manchester | Jamaica | 6–0 | Friendly match |
| 37 | 6 June 2007 | A. Le Coq Arena,Tallinn | Estonia | 3–0 | UEFA Euro 2008 qualification |
| 38 | 8 September 2007 | Wembley Stadium, London | Israel | 3–0 | UEFA Euro 2008 qualification |
| 39 | 12 September 2007 | Wembley Stadium, London | Russia | 3–0 | UEFA Euro 2008 qualification |
| 40 |