На Евро-2004 Алонсо был заменён в матче с Россией при счёте 1:0, сыграл все 90 минут против Португалии, где его команда уступила со счётом 0:1. В итоге испанцы не прошли групповой этап[41].
На чемпионате мира в Германии Хаби Алонсо 14 июня 2006 года забил первый гол испанской сборной в ворота Украины (счёт матча 4:0), ставший первым голом Испании на турнире и первым голом Алонсо за сборную[42]. Несмотря на успешное выступление на групповой стадии, где Испания выиграла все свои игры, команда была выбита будущими финалистами, французами, в 1/8 финала[43].
На Евро-2008, которое оказалось успешным для испанцев, Алонсо был капитаном сборной в заключительной игре группового этапа против Греции, став игроком матча[44]. Испания выиграла турнир, а Алонсо сыграл в четырёх из шести матчей за сборную[45].
На ЧМ-2010 Хаби Алонсо участвовал во всех матчах сборной Испании, играя вместе с Серхио Бускетсом и Хави в центре поля, и помог сборной завоевать первый трофей Кубка мира[46]. На 28-й минуте заключительной игры против Нидерландов он получил удар в грудь от голландского полузащитника Найджела де Йонга. Фол был спорным, казалось, что нарушение заслуживает прямой красной карточки, но Говард Уэбб ограничился жёлтой[47]. Несмотря на боль, он доиграл весь матч.
На Евро-2012 23 июня 2012 года, Хаби Алонсо сыграл свой 100-й матч за Испанию[48] в четвертьфинале против Франции, в котором он забил оба мяча и принёс победу Испании.
Перед ЧМ-2014 Хаби Алонсо принял решение завершить выступления за сборную Испании по завершении турнира[49]. На самом «мундиале» Алонсо открыл счёт в первом матче группового этапа со сборной Нидерландов, однако матч закончился поражением испанцев со счётом 1:5.
Всего за сборную своей страны Хаби Алонсо провел 114 игр и забил 16 мячей, выиграв в составе национальной команды два чемпионата Европы (2008, 2012), чемпионат мира (2010) и став бронзовым призёром Кубка конфедераций (2009).