Peru 0-0 Colombia (2-4 on penalties): Shootout heartbreak for Cueva and Co.

A penalty shootout win over Peru saw Colombia move into the semifinals of the Copa America Centenario.

Colombia advanced to the semifinals of the Copa America Centenario courtesy of a 4-2 penalty shootout victory over Peru on Friday. 

With the score 0-0 following regulation time, penalties were needed to decide who moved into the last four at MetLife Stadium in New Jersey.

James Rodriguez, Juan Cuadrado, Dayro Moreno and Sebastian Perez all converted their spot kicks for Colombia in the shootout win, as goalkeeper David Ospina produced a stunning save with his foot to deny Peru's Miguel Trauco, before Christian Cueva put his penalty over the bar, sealing elimination.

The win means Colombia moves into the semifinals of the Copa for the first time since 2004 following consecutive exits at the quarterfinal stage, with a final-four showdown with either Mexico or Chile looming.

COPA AMERICA: Fan fights in Glendale | Wrong national anthem played

After resting several of his stars for the final group game against Costa Rica, Colombia coach Jose Pekerman named his strongest lineup, with the likes of James, Cuadrado, Carlos Bacca and Ospina all returning.

Peru coach Ricardo Gareca, meanwhile, only made the one change, with Renato Tapia coming in for Adan Balbin.

A bright start for Colombia led to an early chance for Bacca, but the AC Milan forward was dragged too wide, eventually letting off a shot that was just off target. 

It was a fiery opening with several passionate challenges however Colombia continued to edge the game, creating the better of the chances.

The next opportunity fell to James in the 22nd minute, with the Real Madrid attacker seeing his shot cannon off the post.

Neither side was able to craft any clear-cut chances on goal for the rest of the half, with the scores deservedly locked at 0-0 going into the break.

Both sides were awarded early free kicks in the second half, but poor deliveries let them down.

It was the story of the half, with Colombia and Peru failing to find that decisive last pass, seeing a number of promising attacks come to nothing.

Bacca had the best chance of the half approaching the 80th-minute mark after being played in by a ball over the top of Peru's defense, but he failed to make contact on the shot.

Colombia defender Farid Diaz, already on a yellow, escaped seeing red after a foul on substitute Cristian Benavente just outside the area, which the referee waved away.

But the 32-year-old was later carried off on a stretcher after falling awkwardly, replaced by Fabian Fabra in stoppage time.

Peru won a late corner through captain Paolo Guerrero but Ospina produced a stunning save to deny the leaping Christian Ramos, as the game went to a penalty shootout. 

With Colombia scoring all four of its penalties, the pressure was on Cueva after Trueco's spot kick was saved, but the 24-year-old skied his effort as Peru bowed out.