City made most of the early running with Aleksandar Kolarov firing high and wide of the crossbar from outside the box, although Tosic did hit the side-netting for CSKA with 12 minutes on the clock.
© Getty Images
Aguero might have tested the home side's goalkeeper with a strike moments later, but his volley moved harmlessly wide of the post. Seydou Doumbia threatened with his pace down the other end in the next attack, but his final touch allowed City defender Matija Nastasic to clear the danger.
Aguero had another opportunity from a header after 22 minutes, but the Argentine could only loop his effort high and wide of the crossbar, before Alvaro Negredo missed the target with a long-range strike.
CSKA were ahead after 32 minutes when Tosic lifted his effort over Hart from inside the box, but City were level two minutes later when Aguero turned a David Silva cross into the back of the net.
Aguero was on target once more in the latter stages of the half, as he headed a Negredo cross into the back of the net to leave City ahead at the interval.
© Getty Images
City had the ball in the back of the net in the early stages of the second period, but Negredo was penalised for handball inside the box. Doumbia had a penalty shout down the other end moments later, but the referee was not interested.
Doumbia had another opportunity after 53 minutes, but he could only plant his header into the arms of Joe Hart. Kolarov had a free kick down the other end moments later, but his effort moved wide of the post.
Silva was next to come close for City after 65 minutes, but the Spanish international could only turn his low effort into the waiting arms of CSKA stopper Igor Akinfeev, before the Russian turned Yaya Toure's strike over the crossbar.
Ahmed Musa had the ball in the back of the net after 80 minutes for CSKA, but the referee chalked it off for a high foot. Keisuke Honda had a glorious chance to level in stoppage time, but Hart was on hand to make a fine save.