Xabi Alonso's double was enough to holders Spain to book an all-Iberian European Championship semi final against Portgual after edging a lackluster France in Donetsk.
The Real Madrid midfielder nodded home unchallenged after Jordi Alba's cross, before stroking home a stoppage time spot kick, to settle a contest lacking in quality from the outset, despite the depth of talent on show.
France's all-star attack was again stifled as their hangover from their defeat to Sweden continued, with Spain securing their first ever competitive victory over the champions of 2000.
In a game that brought together the reigning world and European champions in Spain and the last team to hold both titles in France, Vincete Del Bosque's side reverted to the team which began the tournament against Italy, meaning Cesc Fabregas was included at the expense of a striker; Fernando Torres.
After opting to field an attacking front three during the group stage, Laurent Blanc shuffled his pack, brining in Anthony Reveillere, Florent Malouda, Yohan Cabaye and Laurent Koscielny for Samir Nasri, Alou Diarra, Hatem Ben Arfa and the suspended Philippe Mexes.
Without a focal point to their attack, Spain were finding it difficult to break down a France side, who were relying on their prowess on the break in the early stages.
Quickly, the Spain's attritional passing style pushed back a high French defensive line, and once Alba escaped Mathieu Debuchy, Alonso planted a header beyond Hugo Lloris with barely a quarter of the game played.
Carrying little threat with the ball, France's best opportunity to draw level was always liable to come from a set piece, and Cabaye almost reproduced his free-kick heroics from his first season at Newcastle United, forcing Iker Casillas to turn behind from his 35-yard strike.
After the interval Spain's dominance in possession began to waver, and Debuchy, looking to make amends for his first-half effort, came within a whisker of leveling, as he flashed a header over the bar.
Unable to provide a constant threat on the Spain goal, France were forced into two attacking changes, with Jeremy Menez and Nasri being introduced with a view to adding authority to their forward line.
However, the changes worked to disrupt the French attack, as Karim Benzema and Franck Ribery failed to make an impact, and their misery was compounded in stoppage time as Reveillere fouled substitute Pedro, with Alonso confirming the holders' last-four spot, with a cool finish from the subsequent penalty.