1945年8月抗戰勝利前后,蔣介石集團一方面裝出和平姿態,另一方面卻加緊調動大軍,向華北、華中、華南各解放區陸續開進。閻錫山在蔣介石的指使下,于1945年8月間派其第八集團軍副總司令兼第十九軍軍長史澤波,乘八路軍主力向日偽大舉反攻之際,率軍從臨汾、浮山、翼城等地侵入太行山腹地,占領了八路軍從日偽手中收復的襄垣、潞城以及被八路軍包圍的長治、長子、壺關、屯留等縣城,企圖搶占整個晉東南,恢復其在山西的反動統治。為了反擊國民黨的軍事進攻,中共中央和中央軍委指示晉冀魯豫軍區,集中太行太岳優勢兵力,在上黨地區發起保衛勝利果實的大規模自衛反擊戰,殲滅侵入該地區的國民黨軍。根據上級的部署,攻打長子縣城被交到了第三八六旅手中。
長子城是國民黨軍在上黨地區除了長治城外守軍最多,防御最強的一個縣城。該城抗日戰爭時期曾為日偽軍長期設防,工事比較堅固。國民黨軍挺進第二縱隊進占該城后,又加修和改造了工事和副防御設施。長子城的城墻高約8米,外壕約3米寬、兩米深,城門外和城墻四角均有石砌炮樓,輔以低碉和暗碉相結合,各碉堡的火力可以相互支援。各主要防御地段,敷設有地雷、鹿砦、鐵絲網等障礙物;城外和城關北高廟、南高廟、能仁寺、文昌閣等重要據點,都各自形成獨立支撐點。該城內的國民黨守軍是“挺進第二縱隊司令”白映蟾率領的挺進縱隊和兩個保安大隊。
三八六旅是抗日戰爭時期威名赫赫的一支抗日鐵軍,當時由劉忠任旅長,張祖諒任政治委員,下轄第七七二團、第二十團和士敏獨立團。接到任務后,劉忠、張祖諒立即進行充分的戰前動員,認真偵察了敵情,太岳軍區司令員陳賡對攻打長子縣城又作了具體部署,并把“決死第一旅”的第三十八團配屬給第三八六旅,另外派長子獨立團予以配合。經研究,攻擊部署為:以二十團附山炮兩門,首先奪取西關,隨后由西門登城;以七七二團附山炮、機關炮各1門,攻占北高廟和北關,隨后由北門登城;以三十八團從西南角登城,以士敏獨立團為預備隊,奪取東關后相機登城;以長子獨立團包圍南高廟的國民黨守軍。由于炮火不足和城墻較高,決定采取坑道爆破的方式攻城。
9月13日1時,戰斗打響。三八六旅各部按部署分別向國民黨守軍發起攻擊,經過5小時激戰,各部隊相繼消滅了外圍的守敵,逼近城墻。城里敵人見狀,曾從西門沖出來焚燒西關房屋并組織反撲,旋被擊退,只有七七二團部隊在攻擊北高廟時受阻。敵人憑借10米高的峭壁瘋狂向下掃射,并頻頻施放毒氣彈,致使七七二團連攻四次未能拿下。七七二團立即調整戰術,再次發起猛攻——大部隊繼續在北面佯攻,在敵人兵力集中于北面之際,迅速以一個排的兵力攻敵背后,先由工兵炸開高墻,部隊隨即突入廟內,與敵人展開白刃格斗。敵守軍大部被殲,少數逃回城內。長子獨立團則將南高廟的守敵團團包圍。
9月14日起,二十團和七七二團開始向北門和西門挖掘爆破用坑道,經過四晝夜連續施工,至18日完成了坑道作業,并將大量炸藥送入坑道。18日18時50分總攻開始,隨著幾聲巨響,西門和北門外的大炮樓被炸塌,城墻也被炸開兩個缺口,城墻上的國民黨軍多被震昏過去。三八六旅配屬的山炮也同時進行抵近射擊,分別把敵人北面和西面城墻上的碉堡摧毀。
由于三八六旅彈藥很少,火力保障只能堅持10分鐘,因此,在戰斗前,旅首長要求攻城部隊必須在10分鐘內一次完成突破。突擊部隊戰士們發起攻擊后,攻城部隊梯子組、跳板組、投彈組等,抬著跳板、云梯等器材,迅速沖過開闊地,爬過鐵絲網,沖過護城壕,把云梯架上城墻,用10分鐘登上了城頭。各部隨即攻入城內,隨即向縱深發展,二十團迅速奪取了鐘鼓樓制高點。經過激烈巷戰,全殲了守敵,戰斗于子夜時分勝利結束。南高廟國民黨守軍見大勢已去,企圖突圍而逃,被長子獨立團殲滅大部。
此次戰斗,三八六旅共斃傷國民黨軍500余人,生俘國民黨軍挺進縱隊司令白映蟾及縣長陳士芳以下1500余人,繳獲了大量武器彈藥。