倪家營子南北長16裏,東西寬3裏,像個長方形的軍棋盤,其間有大小四、五十個黃土圍子,像是盤中的棋子。一個圍子裏住有一兩家或三四家人。有錢的人家圍牆厚達三五尺,牆上築有垛口和望樓。這種圍子稱作屯莊。一般人家的圍牆稍薄、矮,沒有望樓。這種圍子叫做莊子。莊與莊之間是莊稼地、溝渠和一些樹木。倪家營子南高北低,南半部叫上營子,北半部叫下營子。西路軍總指揮部駐廖家屯。此時,西路軍尚有主力10個團,約8000人,紅30軍防守西南方向,88師陣地位於下營子西南麵,89師陣地位於88師後麵,軍部另以一部分兵力為預備隊。紅9軍防守下營子東北方向,兩軍前沿陣地相接,縱深梯次配置,構成一個橢圓形防禦陣地,各部憑壘固守。總直屬隊及紅5軍餘部駐下營子中部堅固的土圍子裏。紅軍計劃在消耗敵人有生力量後轉入反攻,並乘勝東進。
此時馬家軍尾隨而至。馬步芳認為抓住了紅軍陷入狹長崎嶇山嶺絕地,沒有補給,彈藥缺乏,沒有棉衣,沒有糧食等弱點,以騎兵配合炮兵大舉進攻。為了擊破倪家營子的紅軍主力,馬步芳糾合了馬祿、馬彪、韓起功等4個騎兵旅和5個步兵團共計73000餘人向紅軍進攻。2月1日拂曉,馬家軍數萬人向倪家營子發起猛攻。敵人以兩個旅對紅88師263團固守的王家屯莊實施主要突破。炮擊過後,大批馬家軍在督戰隊的威逼下蝗蟲般衝上紅軍陣地。紅軍指戰員從坍塌的工事和彈坑裏鑽出來,抵近射擊,殺傷敵人。馬家軍一部突入紅軍陣地,紅軍就以大刀、長矛、木棍與敵搏鬥,直至將敵人打回去。堅守前沿的紅263團1個連打退敵人多次猛攻,隻剩9人仍堅守陣地。戰至夜晚,紅88師還派出善於夜戰的“夜老虎”265團襲擾馬家軍,炸毀敵人軍火,打得馬家軍晝夜不寧。
總指揮部後方機關還派出人員在緊挨前沿的屯莊裏,發動群眾成立村蘇維埃政權,平分地主財產。政治部的劇團、宣傳隊還在春節給部隊和老鄉們演戲。婦女獨立團的女戰士白天堅守陣地,抬傷員,送飯,夜晚還送樹木到前線做鹿砦。
馬家軍多次較大規模的進攻被打退後,又改變戰術,對紅30軍實行兩側迂回包圍的戰術,沿雨裂溝插到紅30軍兩側,然後對西路軍總指揮部進行攻擊。總指揮徐向前爬上房頂,親自指揮部隊戰鬥。紅30軍政委李先念和軍長程世才立即組織了3個團的兵力,成梯隊反擊敵人,直打到天黑,才將嵌入紅軍陣地的馬家軍趕出去。馬家軍在瘋狂進攻紅30軍的同時,也不斷攻擊紅9軍陣地。