涼州城西的一些戰鬥。紅軍先頭部隊到達城西四十里鋪,騎五師祁明山旅來犯,激戰數小時,祁不支而退。馬祿旅又在三十里鋪攻擊紅軍,韓起祿旅在四壩一帶與紅軍相持。30日,馬元海令劉呈德團、祁明山旅再度進犯四十里鋪,紅軍3000餘人勇猛衝擊,馬部潰退。馬元海復督促進攻,紅軍放棄四十里鋪及其附近堡寨,但馬元海亦死傷士兵及民團百人。
12月2日,朱紹良飛抵涼州,面囑馬步青限期消滅河西紅軍,並令楊德亮旅抵涼州,歸馬步青指揮。又派空軍第十五隊駐涼州,由毛邦初指揮助戰。馬步芳遂以第五縱隊司令名義,命令楊德亮旅扼守涼州各要道,使其無能立功。
永昌戰鬥。12月1日,紅軍西路軍總部、第三十軍、九軍佔領永昌,第五軍佔領山丹。第三十軍的八八師、師佈防於豐樂堡、八壩、水磨一帶,馬彪攻擊,無法動搖紅軍陣地。馬元海遂繞道攻永昌,馬彪及馬樸攻山丹。馬元海會同韓起祿旅、祁明山旅攻擊豐樂堡、八壩、水磨,混戰終夜,有時自相踐踏,毫無收穫。馬元海令劉呈德由徐家堡一帶突擊,劉團迭受重創,死亡900多人。馬元海電馬步芳,深責劉團作戰不力。馬步芳提出“寧死一萬人,不失一寸土”的口號,驅迫民團以密集隊形衝鋒,往往積屍如山。從3日到4日,馬元海多次向紅軍進攻,均無功而退。5日,以馬祿旅牽制紅軍兵力,主力轉攻永昌城東三十里鋪,攻陷幾個莊堡,馬步鑾團截獲紅軍歌舞團男女團員數十人。此後數日無大戰。9日,蔣介石自西安電馬步芳:“過河的紅軍,既已消滅過半,應乘此聲威,督率所部,務於兩星期內將其撲滅。”又謂:“民勤極關重要,妥爲佈置,倘遇警報,務須死守待援,切囑。”但馬步芳卻不以爲然,對其部屬說:“中央命我兩星期消滅紅軍,可是中央軍打了多少年,爲啥不能消滅紅軍?民勤地方邊鄙,又有什麼重要值得死守?”此後,12月12日西安事變發生,馬步芳電馬元海嚴守秘密,不得泄露,觀望數日,直至18日才發電討伐張楊。前線軍心也有動搖,故十幾天無大戰事。20日後,永昌周圍纔不斷髮生激戰,26日夜,紅軍放棄四周莊堡,集中於永昌城內。27日,馬元海以馬步鑾團,配以西寧民團,攻永昌西門;以劉呈德團,配以保安旅韓忠良部及循化民團,攻永昌東北城角;以韓起祿爲機動部隊,截擊突圍的紅軍。駐涼州的空軍的戰鬥機3架助戰。各路均受到紅軍阻擊,死傷600餘人,1架戰鬥機亦被擊傷。馬元海被迫改攻爲圍。28日早2時許,圍守城東門外的劉呈德團,發現城內沉寂無聲,派兵偵探。始知紅軍已轉移陣地,棄永昌西進。遂闖入城中,僅獲紅軍後勤工匠及駱駝。馬元海專電報稱“攻克永昌城”,馬步芳轉向軍事委員會邀功,並派馬德等前往慰勞,又令郭學禮、魏敷滋、馬師融等人,以“青海省黨政代表團”名義前去慰勞。29日,馬元海電稱紅軍“有進攻民樂模樣”,馬步芳以民樂接近扁都口,恐紅軍進入青海,急令韓起功旅和民樂民團於洪水河堵擊,又派門源民團布哈公、南木卡部扼守扁都口。時馬步青爲保存實力,將其騎五師祁明山旅撤回涼州,僅留其馬祿旅、韓起祿旅繼續作戰,馬步芳心雖不滿,亦無法制止。
山丹戰鬥。12月20日至28日之間,馬忠義、陳嘉禾、馬得勝等部督率民團,犯山丹縣境之十五里鋪、十里鋪及五里鋪,均被紅軍擊潰。馬樸部繼來,又被擊退。29日,轟炸機兩架轟炸,紅五軍收縮于山丹城內。馬彪、馬樸嚴令進犯,激戰竟日,毫無進展,只得採取包圍形勢。30日夜,紅五軍撤出山丹,第二十三師三十七團團長、團政委、營長、連長4人犧牲,大部隊繼續西進。馬部上報則層層加碼,馬彪等向馬步芳報稱,“攻克山丹”。馬步芳向軍事委員會則報稱:“我軍冒險犯難,將紅軍勁旅擊潰,克復山丹縣城。”
高臺戰鬥。12月下旬,紅軍進向甘州。馬步芳恐重蹈涼州城的覆轍,嚴令韓起功旅死守甘州城。馬元海緊跟紅軍尾後騷擾。29日夜,紅五軍先頭部隊,繞渡甘州城西的黑河,韓起功派甘州民團截擊,僅有小接觸,又恐甘州城有失,立即撤回守城。但紅軍未向甘州城進攻,轉向城西南的龍首堡、甘郡堡、黑河及倪家營子一帶前進。1937年元月14日,紅五軍二十四師、二十三師克復高臺、臨澤。17日,馬元海令韓三成率民團向高臺西門外的紅軍大碉堡進犯,竟殘忍地放火燒燬該碉堡。18日,紅軍圍攻譚呈祥扼守的李家堡,譚呈祥受傷,士兵被斃近百人,賴以向堡外院落澆油燃燒而倖存。19日,馬樸進犯臨澤,紅軍援軍驟至,馬樸潰退。20日,集中兵力犯高臺,以馬忠義團、馬得勝團攻西城,馬祿旅、韓起祿旅、韓進祿所率民團攻東北城角,馬樸旅、陳嘉禾率民團攻東南城角,馬兆瑞糾集其民團爲預備隊。高臺城於1929年地震倒塌,無險可守。拂曉,馬樸旅之馬忠義團闖入城內,發生巷戰,各路均迫民團爲前驅,以大刀肉搏,死傷慘重。紅軍浴血奮戰,犧牲3500餘人,五軍軍長董振堂、政治部主任楊克明,二十四師師長吳代朝,九軍十三師師長葉崇本、參謀長劉培基等均壯烈犧牲,高臺失陷。馬步芳據報,電蔣介石、何應欽、朱紹良邀“功”。《青海日報》一天之內,連發三次號外。馬步青又將其韓起祿旅撤返涼州。
臨澤戰鬥。堅守沙河的紅軍,於元月21日與西寧民團交戰,馬步鑾團馳至,紅軍第三十軍騎兵師亦增援,雙方激戰,死傷均重,騎兵師政委秦賢道犧牲。22日,馬步鑾團、劉呈德團、馬祿旅及民團,先向臨澤河北及城南種莊堡進犯,繼由南郊猛撲南門,戰鬥激烈,已將雲梯數十架搭於南城牆上,立即被紅軍機槍擊退。復行硬攻,紅軍多用石塊拒擊,石發如雨,紅軍女戰士亦英勇異常。馬元海明知守城紅軍彈藥已缺,但此城仍如銅牆鐵壁,可望而不可即。當夜10時許,風雪交加,馬元海乘機迫令民團攻城,始知紅軍早已由西南門撤走。城內大廟內有紅軍一小隊人,均被殘殺。繼之在城郊激戰,紅軍師長董俊彥犧牲。此後,紅軍逐漸在沙河一帶集中。馬步芳恐紅軍沿甘新公路西上入新,嚴令馬元海“死力堵擊於肅州沙窩地帶,阻止西進和東下”。隨之馬步青又將馬祿部撤回,至此,其騎五師人馬,全部撤走。
倪家營子戰鬥。紅軍逐漸集結於龍首堡、西墩堡一帶村落,馬樸旅、韓起功旅尾追。元月27日,馬元海令馬玉龍手槍團、憲兵團合攻西墩堡,紅軍三十軍八十八師迎擊,駐龍首堡的紅軍三十軍八十九師3000餘人進援,馬部之憲兵團被殲,全團1300人中僅餘300餘人,手槍團亦死傷1300餘人。當夜,馬部在雷家屯儲存的炸藥被紅軍焚燬,燃燒一晝一夜。28日,紅軍轉入倪家營子,馬步芳尚難判斷紅軍前進方向。29日接馬元海電報雲:“紅軍大部隊離開甘新公路,進入離甘州南七十里的倪家營子,佔堡寨四十三處,星羅棋佈於周圍三十里之地,總人數約有一萬三千餘人,確係主力。”遂肯定紅軍轉向祁連南山地區活動,即令馬元海進攻,時馬家聚集於倪家營子的部隊和民團達73000餘人,已將倪家營子東西兩面堡寨四十餘處佔據。即以西寧上五莊、門源民團繞於東,馬步鑾團、劉呈德團、循化上工民團繞於南,韓起功旅繞於西北,馬彪旅、馬樸旅繞於東北,將倪家營子層層包圍。2月1日,紅軍曾向馬元海發函,以西安事變和平解決,全國慶幸,雙方應商洽解決問題。但趕盡殺絕的馬步芳不肯罷手,令馬元海“仍即聚集重兵,勿稍放鬆,以免失機”。自2日起,馬元海下令多次攻擊,紅軍迎戰不屈。從16日起,馬元海拼湊一切力量總進犯,戰況激烈。至20日,紅軍陸續犧牲1000餘人,馬部死亡大於紅軍數倍。至28日,馬部先後被擊斃團長1人、擊傷團長2人,馬樸臀部亦受傷。28日晚,紅軍分十路向南撤退,突圍中紅軍犧牲1000餘人。後紅軍又各路出擊,復集結於倪家營子,馬元海又攻,先後以死傷7000人的代價,始於30日佔領倪家營子。馬步芳照例誇大戰功。原來馬樸在陣地側方大便,被流彈擊傷臀部,馬步芳轉報時改爲“馬樸身先士卒,血戰中被傷”。命令《青海日報》發消息時加按語謂:“馬旅長樸身臨前線指揮,雙方肉搏,形勢猛烈,終以奮不顧身,督促部隊勇往直前中臀部受傷。查22日陣亡的營長馬學良,爲馬旅長獨子,是役父傷子亡,堪資矜式。”此後,在3月初,繼續在鳳凰山、三流溝一帶交戰,雙方互有傷亡,馬部團長譚應福、馬佔成被擊斃。
梨園堡戰鬥。3月11日,紅軍主力集結於梨園堡。馬元海電報雲:“紅軍在梨園堡恢復過河西上時的編制,第三十軍爲第一縱隊,第九軍爲第二縱隊,第五軍爲第三縱隊,堅守梨園堡。”馬步芳即令加緊圍攻。12日,攻陷紅軍防線,馬忠義旅、馬步鑾旅以優勢兵力,強攻東西兩山頭。紅軍頑強應戰,反覆衝殺,短兵相接,九軍政委陳海松、二十五師政委楊朝禮在混戰中壯烈犧牲,三十軍的八十師和九軍的一個團遭受重大損失,以“夜老虎”聞名的三十軍八十九師二六八團,犧牲也慘重。14日,東西兩山陷落,紅軍進入祁連山支脈的草嶺大阪,時天寒地凍,到處冰雪,紅軍只有消耗,毫無補給,且山路崎嶇,路途生疏,於是化整爲零,分頭西進。馬忠義旅進山搜索,發現紅軍砸毀武器、電臺很多,也有文件燒燬的灰堆,有的凍僵的紅軍,仍然緊握手中槍。15日搜山中,馬忠義突遭紅軍射擊,馬忠義以一個營衝上,發現紅軍只有二三十人,大多數已犧牲,僅俘獲五六人,一被打斷左臂和打傷腿的紅軍師長,年約30歲,馬忠義迫令投降,遭到嚴厲斥責,馬忠義殘忍地扳動槍機,師長高呼“萬歲”,英勇就義。後來得悉,這是紅三十軍八十八師師長熊厚發。馬忠義後在搜索中,又將因子彈打光的三十軍軍長孫玉清俘獲。
黃番寺戰鬥。一部紅軍把守黃番寺山峽,馬元海於15日進犯,紅軍迎擊後進入黃番寺黑河上游。馬元海繼續進犯,在圍攻康龍寺中,紅軍擊斃其營長、連長各1人,擊傷其營長2人,後康龍寺失陷,紅軍犧牲慘重。之後,紅軍特務團被圍於青龍寺及犛牛山一帶,犧牲100餘人,赤腳凍壞的戰士400餘人被俘,在送往甘州途中,被殘殺不少。在這一帶,小戰鬥數十次,循化民團正副大隊長被擊斃。此後,紅軍繼續西進,此地無戰鬥。馬元海返回甘州,由韓起功旅繼續搜山,4月6日,與紅軍支隊司令馬良駿十數人遭遇,馬良駿受傷後,仍率部進入松林堅持戰鬥。
安西戰鬥。紅軍經石窩會議,決定陳昌浩、徐向前化裝潛回延安,部隊分三路繼續西進。3月16日,紅軍組成的左翼軍沿祁連南山山麓西進,馬步芳又恐入青海境,令馬正魁團馳往都蘭佈防,李增蔭團警戒於肅州的甘青交界線。4月1日,據報紅軍向昌馬耳子前進,馬步芳急令在肅州的劉呈德團馳往安西堵截,又令馬忠義率領1個團跟進。4月8日劉呈德在安西城佈防。當夜紅軍攻城後轉進於五營村、王家圍子,劉團出城追擊,紅軍乘夜突圍。其後又在白墩子至紅柳園之間交戰,互有傷亡。15日激戰於紅柳園,紅軍犧牲100餘人,劉團亦死營長以下50餘人。紅軍突圍而西,終於到達星星峽。馬步芳轉電新疆哈密警備司令堯樂博斯堵擊。20日,堯樂博斯在苦水佈防,迫令紅軍繳械,卻被紅軍擊潰。最後,紅軍雖然僅剩以下437人,亦終於到達新疆。紅軍在極端困難的條件下,與馬步芳部隊及其他國民黨部隊血戰5個多月,共殲滅敵軍25000餘人,但由於寡不敵衆、疲兵屢戰、有耗無補等原因,終於失敗。但革命的火種沒有滅絕,且日益熊熊燃燒,終於發展成燎原大火。