O heptacampeão mundial Michael Schumacher, que havia largado na pole position, terminou em segundo lugar, enquanto seu irmão, Ralf, fez boa corrida e obteve seu primeiro pódio pela Toyota, na terceira posição. Completaram a zona de pontuação, Jarno Trulli (Toyota), em quarto; Jenson Button (BAR), em quinto; Nick Heidfeld (Williams), em sexto; Mark Webber (Williams), em sétimo; e Takuma Sato (BAR), em oitavo.
Os brasileiros tiveram uma corrida com muitos problemas. Rubens Barrichello, da Ferrari, teve de fazer uma parada extra nos boxes ainda na primeira volta para trocar o bico de seu carro, quebrado após um toque com Trulli na primeira curva, e terminou a prova em décimo lugar. Já Felipe Massa teve um princípio de incêndio em seu carro durante uma parada nos boxes e ficou apenas com a 14ª posição, a sete voltas do vencedor.
A largada foi bastante tumultuada. Na freada para a primeira curva, Alonso e Barrichello se tocaram respectivamente com Trulli e Ralf, quebraram suas asas dianteiras e tiveram de ir aos boxes. Ainda na primeira volta, o bico do carro de Alonso se desprendeu e David Coulthard (Red Bull) o atingiu, causando a quebra de sua suspensão dianteira direita.
Quarto no grid, Raikkonen pulou para segundo após a largada e passou a perseguir Schumacher. Na metade da prova, após a segunda parada de ambos nos boxes, o finlandês assumiu a ponta e abriu muita vantagem sobre Schumacher.
No fim, o heptacampeão perdeu rendimento e quase foi ultrapassado pelo irmão Ralf, cuja Toyota andava melhor. De resto, a corrida foi monótona e, como de costume, não houve ultrapassagens por causa do apertado traçado húngaro.
Resultado do GP da Hungria:
1º - Kimi Raikkonen (FIN) McLaren-Mercedes/M - 1h37min25s552
2º - Michael Schumacher (ALE) Ferrari/B - a 35s5
3º - Ralf Schumacher (ALE) Toyota/M - a 36s1
4º - Jarno Trulli (ITA) Toyota/M - a 54s2
5º - Jenson Button (ING) BAR-Honda/M - a 58s8
6º - Nick Heidfeld (ALE) Williams-BMW/M - a 1min08s3
7º - Mark Webber (AUS) Williams-BMW/M - a uma volta
8º - Takuma Sato (JAP) BAR-Honda/M - a uma volta
9º - Giancarlo Fisichella (ITA) Renault/M - a uma volta
10º - Rubens Barrichello (BRA) Ferrari/B - a uma volta
11º - Fernando Alonso (ESP) Renault/M - a uma volta
12º - Narain Karthikeyan (IND) Jordan-Toyota/B - a três voltas
13º - Tiago Monteiro (POR) Jordan-Toyota/B - a quatro voltas
14º - Felipe Massa (BRA) Sauber-Petronas/M - a sete voltas