八月二三日,敵軍增援部隊自吳淞口、寶山一帶登陸,國軍也北調應戰,戰局從市區街道移轉到野戰,除了第八七/八八/三六三個師外,並加入「中央軍校教導總隊」一部參戰,同時其他接受過德制訓練,頭帶德制鋼盔的第一/二/一八/七四軍也趕到戰場,國軍在羅店、月浦、師子林等地激戰。但是日軍有海軍艦上巨炮與空中戰機直接火力支持,國軍傷亡漸增攻擊失利,於是改採以陣地戰為主的守勢作戰。
自九月六日起,日軍再增援兵力,國軍退守瀏河鎮-蘊藻濱-洋涇一線,在這長約五十公裡的連續戰線上,國軍配置了來自全國各地七十個師的兵力,中日雙方共有近一百萬的兵力在此進行著慘烈的陣地戰,國軍在戰線上布署數十萬的部隊,構成兵員密度非常高的防禦線,面對日軍優勢的海空炮火,國軍承受很高的傷亡數字,雙方反復拉鋸爭奪陣地,日軍稱此為「血肉磨坊」,可見戰況慘烈之程度。德國顧問群也親臨前線,協助國軍策劃布署作戰,所以有外國人稱此役為「德國戰爭(The German War)」。