Per la stagione 2005 fu assunto (dopo una prova comparativa con Antônio Pizzonia) dalla Williams per un'annata di transizione, dopo l'addio di Ralf Schumacher e di Juan Pablo Montoya. L'anno fu buono, Heidfeld conquistò anche la pole position al Gran Premio d'Europa al Nürburgring (in cui arrivò secondo, come a Monaco) e in totale andò 3 volte sul podio. A cinque gare dalla fine, però, il pilota tedesco si infortunò, chiudendo anticipatamente la stagione e finendo undicesimo in campionato.