Villa settled an end-to-end tie with his fifth goal of the World Cup [GALLO/GETTY]

Spain striker David Villa fired his team into the World Cup semi-finals for the first time with a late goal to sink Paraguay 1-0 at Ellis Park in Johannesburg – after both sides missed penalties within a matter of minutes.

The game was heading for extra-time after first Oscar Cardozo had his spot kick for Paraguay saved by Iker Casillas, before Xabi Alonso scored from his own penalty – before also having it saved when the referee ordered a retake.

Villa got his fifth goal of the tournament on Saturday to set up a last four clash with Germany, who earlier thrashed Argentina 4-0 in Cape Town.

Until the goal, the hard-working South Americans had successfully nullified Spain's normally dominant midfield and created the clearer chances in a closely-fought first half.

SPECIAL COVERAGE

The match burst into life shortly before the hour when the referee ruled that Spain defender Gerard Pique had hauled down Paraguay striker Cardozo in the penalty area.

Cardozo sent his spot kick low to the left of Iker Casillas but the Spain captain and goalkeeper saved comfortably.

There was more drama at the other end of the pitch minutes later when Spain were awarded a penalty after Villa went down under a challenge.

Alonso netted high to Justo Villar's right, sparking celebrations on the Spain bench but the referee made him retake it after players from both sides encroached into the area.

Alonso went low to Villar's left with his second attempt and after his shot was saved substitute Cesc Fabregas, on for the ineffective Fernando Torres, appeared to be brought down but the referee awarded only a corner.

As the European champions pressed for a winner, midfielder Xavi, who went close with a fizzing volley in the first half, drove narrowly wide and Andres Iniesta drew another fine save from Villar.

Villa, top scorer in the tournament, then grabbed the winner in the 83rd minute from a rebound after substitute Pedro had hit the post following a brilliant run by Andres Iniesta.

Source: Reuters