Матч начался с атак парагвайской команды. Испанцы смогли перехватить инициативу только в конце первого тайма, но возможностей для взятия ворот соперника в первой половине встречи так и не создали.
На 57-й минуте сборная Парагвая получила право на одиннадцатиметровый удар за фол Херарда Пике на Оскаре Кардосо. Удар Кардосо с пенальти отбил вратарь испанцев Икер Касильяс.
Через две минуты пенальти был назначен уже в ворота сборной Парагвая - за нарушение правил на Вилье. Хаби Алонсо отправил мяч в сетку, но арбитр отменил взятие ворот - несколько футболистов сборной Испании вбежали в штрафную площадь соперника раньше времени. Повторный удар Алонсо голкипер парагвайцев Хусто Вильяр отразил.
Решающий эпизод матча произошел на 83-й минуте, когда Андрес Иньеста прошел защитников сборной Парагвая, отдал пас свободному Педро, и тот пробил по воротам соперника. Мяч попал в штангу, после чего отскочил к Вилье. Форвард тоже пробил в штангу, но после этого мяч залетел в ворота. В оставшееся время забить могли обе команды, однако счет так и не изменился. Таким образом, Испания вышла в полуфинал, где она сыграет с Германией. Немцы ранее 3 июля разгромили сборную Аргентины со счетом 4:0. Матч Испания - Германия пройдет 7 июля.