5月2日拂曉,一縱從西南,二縱獨四旅從東南,新四旅從東北,在強大炮火掩護下,發起了猛烈的攻擊。5月4日半夜,自命為“新生力量”的敵精銳部隊整編一六七旅被全殲,斃俘其旅長李昆崗以下6000多人,繳獲胡宗南存放在蟠龍補給基地的6門山炮、1.2萬袋麵粉、4萬套軍裝、上百萬發子彈、千餘匹騾馬以及藥品、望遠鏡等大量戰略物資。西北野戰軍從戰場上取得這樣豐裕的物資補充,這還是第一次。
在繳獲的騾馬中,有一頭騾子原是賀炳炎的坐騎,是被敵人搶去的。那還是在戰前,當時任晉綏軍區第三縱隊副司令員兼獨立五旅旅長的賀炳炎調任第一縱隊副司令員。賀炳炎從蟠龍東麵的野司到西邊的一縱走馬上任,要從敵我部隊之間穿過。野司首長派了一個排護送賀炳炎,但被他婉言謝絕。賀炳炎的膽子實在太大,隻帶了一個警衛員和一頭大騾子、一匹馬就上路了。
走到中途時,迎麵撞上了敵人的保安隊。敵保安隊見賀炳炎披著大鬥篷,騎著大騾子,身後還跟著護兵,以為是他們國民黨正規軍的大官,沒敢動他。
賀炳炎開始也把對方誤認為是自己人,親切地問:“你們是哪個部隊的?”仔細一看,不對!他忙跳下騾子,帶著警衛員突圍。
保安隊醒悟過來,追了一段沒追上,隻好把賀炳炎扔下的騾子牽走了。蟠龍戰役結束後,這頭騾子又重新回到了賀炳炎這邊。
進攻陝甘寧邊區的胡宗南,被拖、疲、打搞垮了,這時兵強馬壯的西北野戰軍開始了內線反攻。1948年8月,西野發起榆林戰役,賀炳炎和廖漢生率領1縱前去打榆林。
榆林城位於晉陝綏邊界地區,瀕臨長城和沙漠,是敵人在我邊區北麵的戰略要地,由鄧寶珊部第二十二軍和胡宗南部第二十八旅及保安隊共1.5萬人把守。
從8月6日起,西北野戰軍集中一縱、二縱、三縱和教導旅、新4旅及警備第四、第六團掃清了外圍,包圍了榆林城。10日到11日,連續兩天爆破登城但都未能成功。
榆林被圍後,蔣介石急得直飛延安督令胡宗南主力北上救援,敵三十六師沿長城外側的沙漠地帶避開我軍阻援部隊,快速插到榆林。賀炳炎和廖漢生一見榆林一時半刻難以攻下,且調動敵主力北上之目的已經達到,遂請示後撤下來轉至榆林與佳縣之間等待時機。
此時,賀龍、習仲勳正率西北局和陝甘寧邊區後方機關向黃河東岸的晉綏邊區轉移,胡宗南急令四軍軍長劉戡率5個旅北上,三十六師南下,夾擊我軍於黃河與無定河之間的狹小地區。
敵三十六師師長鍾鬆馳援榆林有功,得意忘形,馬不停蹄地緊追我軍身後,聲稱要“一戰結束陝北戰爭!”野司決定抓住孤軍冒進的敵三十六師狠狠地揍它一頓。這時黨中央也恰好從靖邊縣小河村轉到這一地區,與野戰軍主力會合。
8月12日,西野主力從榆林主動撤出後,部隊集中在榆林東南,沙家店西北地區。彭總決定一、二縱隊殲滅敵鍾鬆之三十六師,三縱箝製劉戡部,阻其增援。
8月18日,賀炳炎率部和兄弟部隊對路經沙家店向東運動的敵36師發動突然攻擊,敵軍匆忙收縮。但老天仿佛有意發難,突降暴雨,戰鬥隻好中止。
8月19日賀炳炎率一縱、王震率二縱從東西兩側向沙家店發敵三十六師師部及一六五旅起進攻,三縱和綏德分區四團、六團阻擊前來增援的劉戡部。激戰一天一夜,於20日黃昏全殲敵三十六師師部和一二三旅和一六五旅,一二三旅旅長劉子奇被生擒,敵三十六師師長鍾鬆和一六五旅旅長李日基等少數殘敵趁天黑下雨化裝逃跑。
沙家店戰役的勝利,是扭轉陝北戰役的關鍵一仗,基本粉碎了國民黨對陝北的重點進攻,蔣介石吹噓的“啞鈴戰術”也徹底化為了泡影。毛澤東高興地說:“沙家店這一仗打得確實好,對西北戰局有著決定意義,我們最困難的時期已經過去了。”