The offensive

Initial fighting and Army approach to Hanano

The offensive was announced on 15 November, with the start of heavy Russian airstrikes.[34] On 16 November, the Syrian Army supported by Russian airstrikes stormed the Rashidun and Aqrab districts in southwestern Aleppo, but were repelled by the rebels.[35] Amid exchanges of shelling by both sides, clashes renewed in the Jamiat al-Zahra district of western Aleppo.[36]

On 19 November, after heavy bombardment on eastern Aleppo, the Syrian Army attempted to advance in the Sheikh Saeed District in the southeast, but were again repelled by the rebels. Meanwhile, pro-government forces advanced in the northeast.[14] The Army seized the southern and central parts of the Bustan Al-Basha district, leaving them in control of 75 percent of the area.[16][37] In addition, in the evening, after two days of Syrian and Russian airstrikes, the Tiger Forces took control of the strategic Zouhor hill which overlooks the Hanano district and most of rebel-controlled east Aleppo.[38] At the same time, the Army advanced in the southwestern Aleppo district of Aqrab.[39] The Tiger Forces also advanced southwest from the Zouhor hill into the old Sheikh Najjar factories, and seized most of them after intense clashes.[40]

The next day, the Army managed to progress to the entrance of the Hanano district.[41] In the evening, a rebel counter-attack against Zouhor hill and the factories area was launched[42] and eventually repelled.[43] By the end of the day, the Army managed to enter the Hanano district.[44] On 21 November, government advanced in the old Sheikh Najjar factories, the Hanano housings and the nearby Islamic cemetery,[45] while a second Army attack in 48 hours was launched on the southern Sheikh Saeed District.[46] Although the rebels repelled this attack as well, they reportedly suffered heavy casualties.[47]

Capture of Hanano and northeastern rebel collapse

As of 22 November, the military was in control of around a third of Hanano and by the next day half of the district. According to the pro-opposition activist group the SOHR, if the Army managed to seize Hanano, they would be able to cut off the northern part of the rebel-held Aleppo from the rest of the opposition-held districts.[48][49]

On 24 November, the Army pushed deep into the Hanano district, capturing more than half a dozen key buildings.[50] The aim of the advance was to bisect the rebel-held part of Aleppo in two. Heavy and systematic government bombardment inflicted heavy rebel casualties.[51] By the next day, government forces were in control of large parts of Hanano.[52][53] Government forces also took control of large parts of the northeastern 'Ard Al-Hamra and southern Sheikh Lufti districts, as well as the southern Hill 420 (Police Hill).[17][54]

On 26 November, government troops were in control of Hanano,[55][56][57] which was the first district of the city that was taken by the rebels in 2012,[58] and represented about a quarter of the remaining rebel-held part of the city.[59] Government forces also made attempts to advance in the Ard Al-Hamra and Jabal Badro District, south of Hanano.[60] Following the capture of Hanano, 400–600 civilians left the rebel-held part of Aleppo.[61][62]

On 27 November, government forces made major advances[63] after a swift collapse of the rebel defenses,[64] capturing the Jabal-Badro, Ard Al-Hamra and Ba'ibdeen districts,[63][65][66] while also seizing parts of the Sakhour district,[67] namely the Al-Sakhour Bridge.[63] Soon after, the Army took control of the northern Jandoul Factories and secured the Ayn Al-Tal district, as well as large parts of the Hallak Fuqani and Hallak Tahtani districts.[68][69] Due to these advances, the rebels were in a massive retreat,[70][71] also abandoning the Bustan Al-Basha district and parts of Haydariyah, and withdrawing to southern Aleppo through the Sakhour district, which if captured would split the rebel-held part of the city in two.[70][72] At this point, less than a kilometer was separating government troops advancing in east Aleppo from those in the center of the city.[64]

The collapse of the rebel frontlines was attributed to the heavy volume of bombardments, the intensity of the fighting, the number of dead and wounded, and the lack of hospitals.[25] Hundreds of civilians attempted to capitalize on the rebel collapse,[73] with the number of evacuated civilians increasing to nearly 10,000 during the day.[74]

In the evening, only 500 meters were separating the military from closing off the gap between the northeastern and the southeastern parts of the city. By this point, the remaining distance had already come under Army fire control.[75] In addition, the Army completed its control of Hallak Al-Fukani, Hallak Al-Tahtani and Bustan Al-Basha, with Kurdish support, while the northeastern Inzarat district had also been seized.[68][76][77] At least 36 rebels surrendered to the Army during their advances,[78] while a number of them had reportedly defected to the Kurdish-led SDF.[79]

As of 28 November, the entire northeastern part of Aleppo had fallen.[4] Early in the day, the Army took control of Haydariyah.[4][80] Two hours later, government forces also seized Sakhour,[4][81][82] leaving the rebel-held districts of Sheikh Kheder and Sheikh Fares surrounded.[83] Soon after, Sheikh Khider was also taken by the Army, along with parts of Sheikh Fares. The rest of Sheikh Fares was seized by Kurdish forces, who were confirmed to be in control of parts of Hallak, Bustan Al-Basha,[4] Ba'ibdeen and Ayn Al-Tal as well[84] after advancing from the northern Kurdish-controlled Sheikh Maqsood district. The overall situation was described to be "the biggest defeat for the opposition in Aleppo since 2012",[82] with a four-year stalemate in the city being broken.[85]

On 4 December, Reuters reported that residents were returning to Hanano.[86]

Army push into the southeast

Following the rebel collapse in the northeast, the Army made its first advance into the southeastern Tariq al-Bab (al-Helwania) district.[87] On 28 November, they captured the Talet Barakat and Scientific Research Housing areas, south of Jabal Badro,[88][89] and advanced into the Ma'saraniyah Youth housing.[90]

On 29 November, the Army seized large parts of the southeastern al-Jazmati and al-Ma’saraniyah neighborhoods, in order to secure the Aleppo International Airport and its highway.[91][92] The next day, the Army and pro-government Iraqi militias seized most of the Sheikh Saeed district in the southern part of the city.[93][94][95][96] After this, they captured several building blocks in the exposed side of the Sukkari district.[97] During these advances, the Army also cleared the Sadkop and Old Ramouseh areas, south of Sheikh Saeed.[98] Government forces also again advanced in the Ma'saraniyah Youth housing area,[99] and reportedly capturing it.[93] On 1 December, the rebels were able to regain almost all of Sheikh Saeed district in a counter-attack. Government troops managed to retain control of the southern section of the district.[98] They also recaptured some positions in the Ma'saraniyah Youth housing area.[100]

As of 2 December, fighting continued in Sheikh Saeed,[101] with the Army in control of 30% of the district.[102] During the day, they once again advanced in the area.[103] Meanwhile, the Army launched a major assault in the southeastern neighborhoods of Aleppo, capturing two districts,[104] Tariq al-Bab[1] and Karm al-Trab.[105][106] They also took control of a large part of the al-Jazmati district.[107][108] With these advances, government forces secured the airport road[1] and were in control of 60% of the previously rebel-held part of Aleppo.[1] Overall, the Army pushed one kilometer into rebel territory in the city.[109] Around 1 a.m., during the day's clashes, a Syrian Air Force Aero L-39 Albatros was shot down by rebel fire and crashed in the central part of the city, with both pilots killed.[110]

On 3 December, government forces completed their control of al-Jazmati and made a push into Mayssar.[111][112] The next day, the Army made advances in the Mayssar district,[113] after capturing the al-Helwaniyah and al-Jazmati roundabouts.[114] At this point, two kilometers were separating the advancing Army units from the government-held Citadel of Aleppo.[115] Later in the day, government troops captured Mayssar, as well as the Dahret Awwad district.[116][117] They had also reportedly took several positions in the al-Qaterrji and al-Sha'ar neighborhoods.[118]