Khi TBN bế tắc thì Paraguay dù chơi phòng ngự nhưng lại tạo ra được nhiều cơ hội rõ rệt. Phút 35, suýt chút nữa họ có bàn mở tỷ số nếu cú tạt bóng của Morel đã loại cả hàng thủ TBN đến được đầu Santana. Phút 40, Valdes sút tung lưới Casillas nhưng trước đó anh đã để bóng chạm tay. Những đường bóng bổng và dài của Paraguay rất đơn giản nhưng tỏ ra vô cùng hiệu quả. Trong khi đó, TBN đã có hiệp đấu tẻ nhạt nhất từ đầu World Cup 2010.
Sang hiệp 2, lối chơi của TBN vẫn không sáng sủa lên. Trong khi hàng công La Roja đang bế tắc thì phút 59, Pique phạm lỗi với Cardozo trong vòng cấm. Paraguay được hưởng penalty nhưng rất may cho TBN là Casillas xuất sắc bắt dính cú sút của Cardozo. Kịch tính được đẩy lên cao bởi chỉ 2 phút sau, đến lượt TBN được hưởng penalty. Xabi Alonso sút thành công nhưng trọng tài Carlos Batres yêu cầu anh thực hiện lại. Ở lần thứ 2, tiền vệ của Real Madrid lại không thắng được thủ thành Justo Villar. Đáng nói ở chỗ nếu “vua áo Đen” Carlos Batres bắt chính xác, TBN xứng đáng được hưởng quả penalty thứ 2 bởi ngay sau khi cản phá thành công cú sút của Xabi Alonso, Justo Villar đã lại phạm lỗi với Fabregas trong vòng cấm.
Tưởng rằng trận đấu sẽ có thêm hiệp phụ thì phút 83, sau cú sút chạm cột dọc của Pedro, David Villa đã xuất hiện đúng lúc dứt điểm tung lưới thủ thành Justo Villar. Với bàn thắng này, David Villa vươn lên dẫn đầu danh sách “Vua phá lưới” World Cup 2010 với 5 lần lập công. Phút 89, Roque Santa Cruz có cơ hội gỡ hòa cho Paraguay nhưng cú dứt điểm cận thành của anh không thắng được Casillas.
Thắng trận 1-0, TBN nhọc nhằn vượt qua Paraguay để lần đầu tiên ghi tên vào vòng bán kết một kỳ World Cup. Đối thủ tiếp theo của TBN là đội tuyển Đức. Đây sẽ là cặp đấu tái hiện trận chung kết EURO 2008.
Bàn thắng: Tây Ban Nha: David Villa (83’)
Đội hình thi đấu
Tây Ban Nha: Casillas; Sergio Ramos, Pique, Puyol (Marchena, 84’), Capdevila; Busquets, Xabi Alonso (Pedro, 75’), Xavi; David Villa, Torres (Fabregas, 56’), Iniesta.
Paraguay: Justo Villar; Veron, Paulo da Silva, Alcaraz, Morel; Caceres (Barrios, 84’), Santana, Riveros, Barreto (Vera, 64’); Valdez (Roque Santa Cruz, 73’), Cardozo.