10月底,红一方面军第1、第15军团和第81师,红二方面军第2、第6军团及红四方面军第4、第31军,开始由打拉池、海原地区逐次向东转移,寻机歼敌。至11月15日,各部分别移至豫旺堡、毛居井以东和环县以西以及萌城、甜水堡地区。此时,国民党军第37军正准备西渡黄河,“追剿”红军河西部队(西路军);东北军第67军、骑兵军经红军劝阻,前进缓慢;第3军进占同心城后,也停止前进;唯独第1军紧紧尾追红军,进至豫旺地区。中革军委命令红军主力,向山城堡迅速靠近,打击国民党军进攻。16日,红军各部向山城堡南北地区集结。17日,敌第1军分三路前进:左路第1师第1旅由惠安堡东进;中路第1师第2旅向萌城、甜水堡推进;右路第78师由田家原向山城堡前进;第43、第97师为第二梯队进至豫旺县城及附近地区。当日,红军第4、第31军击溃中路第1师第2旅。19日,红军前敌总指挥彭德怀作出集中优势兵力求歼孤立深入之右路第78师的部署:红一方面军第1军团在山城堡以南待机;第15军团一部诱其东进,主力隐蔽于山城堡以东及东北山地;红四方面军第4军主力于山城堡东南地区,第31军于山城堡以北地区隐蔽待机;红28军在红井子一带牵制国民党军左路第1师第1旅;红二方面军第6军团和红一方面军第81师等部在洪德城、环县以西地区迟滞第67军和骑兵军;以红二方面军主力集结于洪德城以北之水头堡地区策应各部作战。
20日,国民党军右路第78师进占小台子、风台堡,其第232旅及另1个团进至山城堡地区,并派出两个连沿山城堡至洪德城大道向南侦察,在八里铺以南遭红1军团一部突然攻击,大部被歼。红军前敌总指挥部当即决定对山城堡之敌发起攻击。21日下午,红15军团和红1军团第2师向山城堡西北之哨马营攻击,断其退路。红1军团主力由南向北,第31军由北向南,第4军由东南而西北向山城堡进逼。当日黄昏,红1军团第1、第4师和红31军一部,乘敌向山城堡以北山地撤退之机,从南、东、北三面攻入山城堡,并乘胜追击,将其大部压缩于山城堡西北山谷中,战至22日9时,将敌第232旅又1个团大部歼灭。同时,红28军在红井子附近击溃左路第1师第1旅。敌第1军其他各部仓皇西撤。
山城堡战役,给蒋介石嫡系胡宗南部以沉重打击,迫使国民党军停止了对陕甘苏区的进攻,对巩固陕甘苏区,贯彻“逼蒋抗日”的方针、促进国内和平的实现,都起了巨大作用。(新华社北京11月23日电)