However, Paraguay keeper Justo Villar made several saves in regular time and then another in the shootout - after Lucas Leiva and Antolin Alcaraz had been sent off in extra time - to see his team into the last four. The Paraguayans will now face Venezuela in the second semi-final in Mendoza on Wednesday.
In the 26th minute, Robinho set up Neymar, who tried to shoot inside the far post but the effort flashed wide. Another attempt by Neymar went just wide of the far post in the 55th minute and Villar then saved a great shot by Alexandre Pato following a Neymar free-kick.
Paraguay midfielder Edgar Barreto cleared Lucio's goalbound header to ensure the game went into extra time. Leiva and Alcaraz were shown red cards after trading blows in the 12th minute of the first extra period amid a touchline fracas, in which Argentinian referee Sergio Pezzotta would have been justified in sending off more than just two players.
No breakthrough was forthcoming before the end of extra time and little changed in the shootout, with Brazil substitute Elano blazing the first spot-kick yards over the bar. So wayward was his effort, in fact, that a replacement ball was required before Barreto took Paraguay's first attempt, but he shot wide.
Villar saved from Thiago Silva before Marcelo Estigarribia made it 1-0 to Paraguay with a powerful strike. Andre Santos fired almost as high over the bar as Elano and, like his team-mate before him, looked accusingly at the penalty spot.
Cristian Riveros found the roof of the net to double the Guaranies' lead and, needing to score in order to keep Brazil in the game, Fred was also off target and Paraguay could celebrate in La Plata city.
Villar admitted Paraguay were not at their best but paid tribute to his team's battling spirit. "It is difficult to analyse," he said. "Brazil were much better and we had to defend ourselves. We had almost no opportunities to score, but we fought a lot. Order and focus were the keys of the game."