1936年10月,紅一、紅二、紅四方面軍在甘肅會寧和靜寧以北的將臺堡(今屬寧夏)會師后,北移至海原、靖遠打拉池地區(qū)。這時,蔣介石不顧中國共產(chǎn)黨一再提出的“停止內(nèi)戰(zhàn),一致抗日”的主張,繼續(xù)堅持反共的內(nèi)戰(zhàn)政策,并坐鎮(zhèn)西安,調(diào)集國民黨軍5個軍,于下旬從會寧至隆德一線由南向北,分4路向紅軍進攻。
為粉碎敵人的進攻,爭取抗日民族統(tǒng)一戰(zhàn)線的形成,紅軍前敵總指揮部根據(jù)中共中央和中革軍委的指示,決定集中主要兵力給國民黨軍第1軍(軍長胡宗南)以殲滅性打擊;以一部兵力牽制第3、第37軍,并相機予以打擊;對東北軍第67軍等積極進行統(tǒng)一戰(zhàn)線工作,以遲滯其前進。
10月底,紅一方面軍第1、第15軍團和第81師,紅二方面軍第2、第6軍團及紅四方面軍第4、第31軍,開始由打拉池、海原地區(qū)逐次向東轉(zhuǎn)移,尋機殲敵。至11月15日,各部分別移至豫旺堡、毛居井以東和環(huán)縣以西以及萌城、甜水堡地區(qū)。
此時,國民黨軍第37軍正準備西渡黃河,“追剿”紅軍河西部隊;東北軍第67軍等部經(jīng)紅軍勸阻,前進緩慢;第3軍進占同心城后,也停止前進;唯獨國民黨軍第1軍緊緊尾追紅軍,進至豫旺地區(qū)。紅軍主力奉命向山城堡迅速靠近,打擊國民黨軍進攻。16日,紅軍各部向山城堡南北地區(qū)集結(jié)。
山城堡位于環(huán)縣以北洪德和甜水堡中間地帶,溝壑縱橫,地形復(fù)雜,利于大部隊設(shè)伏。17日,國民黨軍胡宗南部第1軍分左中右三路向鹽池、甜水堡、山城堡方向前進:左路第1師第1旅由惠安堡東進;中路第1師第2旅向萌城、甜水堡推進;右路第78師由西田家原向山城堡前進;第43、第97師為第二梯隊,進至豫旺縣城及附近地區(qū)。當日,紅軍第4、第31軍擊潰中路第1師第2旅,殲敵團長以下600余人。
17日18時,毛澤東電示彭德懷:紅軍宜以第28軍鉗制敵第1旅,第4軍鉗制敵第2旅,集結(jié)第1軍團、第15軍團及第31軍首先消滅敵第78師,然后再打第2旅,向西北橫掃。18日,國民黨軍第78師發(fā)覺紅軍主力已向洪德城、環(huán)縣方向轉(zhuǎn)移,即向山城堡方向追擊。
19日,紅軍前敵總指揮彭德懷作出集中優(yōu)勢兵力求殲孤立深入之敵右路第78師的部署:第1軍團在山城堡以南待機;第15軍團一部誘敵東進,主力隱蔽于山城堡以東及東北山地;第4軍主力于山城堡東南地區(qū),第31軍于山城堡以北地區(qū)隱蔽待機;第28軍在紅井子一帶牽制國民黨軍左路第1師第1旅;紅二方面軍第6軍團以及紅一方面軍第81師、特務(wù)團、教導(dǎo)營在洪德城、環(huán)縣一線以西地區(qū),阻滯東北軍;前敵總指揮設(shè)在山城堡東南于家灣。
20日,國民黨軍右路第78師進占山城堡、小臺子、風臺堡等地,并派出兩個連沿山城堡至洪德城大道向南偵察,在八里鋪以南遭到第1軍團一部突然攻擊,大部被殲,少數(shù)逃回山城堡。
21日,國民黨軍第78師由山城堡繼續(xù)向東攻擊。預(yù)伏在山城堡周圍的紅軍各部在彭德懷的指揮下,向山城堡之敵發(fā)起總攻。第1軍團第2師協(xié)同第15軍團一部向山城堡西北的哨馬營攻擊,斷其退路。第1軍團第1、第4師由山城堡以南向北進攻,第31軍一部由山城堡以北向南進攻,第4軍由山城堡東南向西北進逼。
當日黃昏,第1軍團第1、第4師和第31軍一部,乘敵向山城堡以北山地撤退之機,從南、東、北三面攻入山城堡,并乘勝追擊。此時,第2師、第15軍團一部已經(jīng)繞至敵后,截斷退路。敵軍頓時潰散,一部突圍。至22日9時,敵軍大部被紅軍包圍壓縮于山城堡西北山谷中,后被殲滅。
這次戰(zhàn)斗,紅軍共殲滅國民黨軍第78師超過一個旅的兵力,取得山城堡戰(zhàn)役的勝利。第78師在戰(zhàn)報中稱,此戰(zhàn)“損失極重,混亂不堪”“以現(xiàn)計約損失三分之二以上”。
山城堡戰(zhàn)役,是中國工農(nóng)紅軍三大主力會師后,相互配合、密切協(xié)作取得的重大軍事勝利,給蔣介石嫡系胡宗南部以沉重打擊,迫使國民黨軍停止了對陜甘蘇區(qū)的進攻,對促進“逼蔣抗日”方針的實現(xiàn)起了積極作用。