Puyol pravidelně nastupujoval i v národním fotbalovém dresu Španělska, ve kterém se objevil i na Mistrovství světa ve fotbale 2002, 2006, 2010 a na Mistrovství Evropy 2004, 2008.