© Getty Images
Congo DR, who edged out the Cape Verde Islands to make the last eight, made all of the early running at Estadio de Bata, but it took 11 minutes for them to register their first shot, with Yannick Bolasie curling just wide of the far post.
Congo were fortunate to still be level after the opening quarter, but they started to show improvement as the half progressed, with Arnold Moutou attempting a shot on target that was well blocked by Gabriel Zakuani.
A lull in the action saw neither side make any inroads in the final third, but Dore struck a free kick that only just cleared the Congo DR crossbar as the break approached.
Congo DR started brightly after the restart and soon created the best opportunity of the match. Dieumerci Mbokani did well to head the ball into the path of strike partner Bokila, but his close-range effort struck the crossbar.
Congo soon made their opponents pay for their missed chances by taking the lead. A set piece was curled into the middle by Delvin N'Dinga, and Dore was perfectly placed to convert the ball into the net from six yards.
That opener rocked Congo DR, and they soon found themselves 2-0 behind when Dore advanced into the penalty area and, although he saw his effort blocked, Bifouma was on hand to fire the rebound home.
However, Congo DR required just three minutes to get back into the contest as Mbokani finished superbly from inside the penalty area, and that goal sparked a Leopards revival as they strived to remain in the tournament.
Bokila's shot from an acute angle just missed the corner, but, with 15 minutes remaining, the forward equalised for his team by finding the top corner after capitalising on a poor clearance.
Congo would have been happy to get to extra time, but, with nine minutes left, the turnaround was complete when Joel Kimwaki Mbela rose highest in the penalty area to head in a free kick from Neeskens Kebano.
Congo were left deflated and, as they threw men forward to try to net an equaliser, Mbokani guaranteed Congo DR's place in the last four by squeezing the ball under the goalkeeper, after holding off two defenders.