The substitute from Sevilla struck near the end of regulation to decide a tepid contest and send La Roja through to the last eight as group winners
Neither side seemed in any hurry to snatch the initiative throughout, with La Roja's famed tiki-taka football failing to break down a determined defensive barrier set up by Slaven Bilic's men.
The match seemed destined to end in a stalemate, but with two minutes remaining, substitute Jesus Navas walked the ball into the net to confirm Croatia's exit from the tournament.
The defending champion now progresses to the last eight as the winners of Group C alongside runner-up Italy, where it will face either France, England or Ukraine.
It was a cagey opening to the match, with Croatia content to sit back and soak up the pressure from Spain– whose possession figures reached 78 percent during the first 20 minutes.
Eventually La Roja would manage a sight on goal through Torres, who managed to squeeze in a shot while being forced to the byline by Gordon Schildenfeld, though Stipe Pletikosa was able to save.
Spain’s next offensive threat would come from their center-back pairing, with both Sergio Ramos and Gerard Pique peppering the Croatia goal from long range.
Ramos would almost blunder moments later, with a meaty challenge inside the area on Mario Mandzukic deemed legitimate by referee Wolfgang Stark, despite the incredulity of Vedran Corluka, who was booked for his protests.
Croatia was looking the part defensively, but with news of Italy’s lead over Ireland filtering through at the interval, knew that a breakthrough would be needed at the other end of the pitch.
And it would nearly get it just before the hour mark. Luka Modric was the architect, skipping free on the right, before bending a cross with the outside of his boot onto the head of Ivan Rakitic, who was thwarted by Iker Casillas from point blank range.
Spain’s tiki-taka football was getting them nowhere, and Del Bosque responded by hauling off Torres for Navas, hoping to use the Sevilla man to introduce more width. Bilic responded in kind, bringing on Jelavic and Perisic in a bid to find the goal that would salvage their participation in the tournament.
The Dortmund midfielder snatched at a chance moments after his arrival, sending a half-volley over the bar after a good delivery from Darjo Srna.
With Italy still ahead in Poznan, matters remained finely poised in Gdansk, with a goal from one side enough to eliminate the other.
Perisic had another opportunity with 10 minutes to go, but his volley was parried by Casillas as the near post, moments after Cesc Fabregas’ dallying on the ball cost him a gilt-edged shooting opportunity.
Iniesta broke free down the left and fired away at goal, but once more, the opening was nothing but a half-chance and easily saved by Pletikosa.
However in the 88th minute, a swift attack saw Iniesta break free, where he squared to Navas for the simplest of goals.
Croatia rushed to respond, but with news of Italy's late second against Ireland rippling throughout the stadium, Bilic's men simply ran out of timeFollow GOAL.COM USA on