Algeria booked an Africa Cup of Nations semi-final with Nigeria after battling past Cote d'Ivoire on penalties.
Sofiane Feghouli broke the deadlock in the first half for Algeria ahead after Baghdad Bounedjah squared it to the Galatasaray midfielder.
After the break, Bounedjah hit the bar from the spot after earning Algeria a penalty, and they were made to pay just after the hour-mark when theCote d'Ivoire equalised through Aston Villa forward Jonathan Kodjia, who rode a tackle before firing a superb effort into the far corner.
The match ultimately went the distance, and after five perfect penalties, Wilfried Bony saw his penalty saved, and though Youcef Belaili could only hit the post with Algeria’s fifth penalty, Serey Die did likewise to send the Ivorians packing.
It was the Ivorians who started the brighter of the two teams, with Max Gradel rattling the post from distance and Jonathan Kodjia failing to apply the finish from close range after superb work from Wilfried Zaha on the right.
Algeria had already shown a threat, with Mahrez dragging a decent effort wide before they took the lead. Bagayoko rashly challenged Bounedjah and the loose ball fell to Bensebaini, who squared it to Feghouli to finish wonderfully.
The first five minutes of the second half saw plenty of drama. Firstly, Algeria missed a golden opportunity to double their lead, with Bounedjah missing a penalty he took after being cleaned out by Sylvain Gbohouo.
Seconds later, Kodjia's attempted pass across the Algerian box took a nick off Aissa Mandi and hit the bar. Eventually, Bounedjah's penalty miss proved costly, with Kodjia gathering a ball from Zaha brilliantly, skipping past his maker and driving the ball into the bottom corner.
That was enough to force extra time, which failed to separate the two teams. In the shoot-out, Raiss M'Bolhi saved Wilfried Bony's effort and although Youcef Belaili hit the post, a subsequent miss from Serey Die sent the Algerians through.