山室师团第一梯队在川沙口一带登陆后,陈诚集团军刚刚编成,部队没有到达指定位置,日军迅即攻占了狮子林炮台、月浦和罗店,继而向浏河与宝山进攻。下午,陈诚的部队先后赶到,罗卓英的第十八军协同霍揆彰军实施反击,当晚收复罗店,第二天收复宝山、狮子林和月浦。
山室师团后续梯队登陆后,陈诚集团军的反击受阻,双方形成对峙。日军主力向罗店方面反扑,双方开始巷战,罗店数次易手,最后由于守军伤亡过重,罗店被日军夺占。
日军暂时休整了几天。31日凌晨,八架日机突然飞到吴淞江岸,丢下三十多颗照明弹,把守军阵地照得透亮。接踵而来的三十多架轰炸机,把地面炸得翻了个边,摧毁了所有的工事。飞机一走,藤田师团第六十八联队在吴淞登陆,二千多名日军发起冲锋,守军第六师伤亡过重,无法抵抗,不到一小时,日军占领了吴淞。
松井石根为连接和扩大两个师团的登陆场,派出一千多人的部队从狮子林和吴淞两面夹击宝山。守军第九十八师奋力阻击,组织了四道防线。日军夺取宝山不到一小时,第九十八师发起反击,白刃搏斗,重新夺回宝山,双方形成拉锯战,共达十二回合。守军每一次夺回宝山,都付出巨大的代价。
9月2日,二千名日军借着炮火的威力,在宽达两公里多的战线上发起攻击,多次企图包围守军未果。日军往往在白天包围了守军,守军在晚上左冲右突,又冲出了包围。战斗异常激烈,尸体堆积如山。
9月5日,日军集中三十多艘军舰,掩护陆军向宝山发起猛攻,守备宝山的五百名官兵,在营长姚子青率领下,浴血奋战,击退日军的多次进攻,顽强坚守了三天。日军用炮火摧毁城墙,用战车堵击城门,集中海陆空火力轰击,全城燃起烈火,姚子青率领部队同日军巷战,又奋战了两个昼夜,多数官兵壮烈牺牲。中国军队不断派部队增援,结果伤亡巨大。第三战区命令部队改为守势。
这时,日军将两块登陆场连成了一片。陈诚集团军重创了日军,自身严重减员,奉命撤出阵地。张治中集团军则奉命放弃宁沪铁路以东的大部地区。17日,中国军队全线退守北站、江湾、庙行、罗店西南和双草墩一线,继续与日军对峙。
松井石根见伤亡与日俱增,两个师团两万多人已伤亡大半,便请陆军部增兵,理由是守军抵抗实在顽强,估计第一线兵力约为十九万,第二线停战区内还有二十七八万,加上中国居民对日军同仇敌忾,不利于日军作战。此外,上海派遣军接济出现困难,两个师团陷于严重的苦战。
陆军部对松井石根的要求意见不一。以陆军大臣杉山元为首的官僚坚持派兵增援,而作战部长石原莞却持反对意见。他说,日军总兵力为七十三万人,国家小,资源少;而中国的总兵力为二百万,地方大,资源丰富。如果长期打下去,所有日本人参军都打不赢这场战争。
参谋总长载仁亲王听到两种意见,倾向于杉山元的立场,但他担心说服不了石原莞,便上奏天皇。奏本说:“上海之战有望获胜,但须增兵,拟增派第九师团、第十三师团和第一○一师团约四万人到上海,并派后备步兵十个大队增援,总计六万兵力。”
裕仁天皇放下奏本,反问载仁亲王:“增派三个师团,是否就能占领上海?”
载仁说:“不仅可以占领上海,还能占领南京”
天皇需要的是胜利。他批准了增兵计划。日军总参谋部又增调野战重炮第五旅团及独立野炮第十五联队、独立工兵第十二联队和第三飞行团开赴上海,统归松井石根指挥。
松井石根得意了。日军在上海的总兵力已达到二十万人。增援的三个师团开到上海,他便发起全面总攻,战线北起浏河,南到高桥,采取宽正面突破。中国新增援的六个师全是桂系部队,由白崇禧指挥,迎着日军的坦克和大炮冲锋,并不讲究战术,全当了日军的活靶子。一颗炮弹爆炸,死伤就有二三十人。六个师上去,半天就没有了。
9月底,日军加强兵力,向守军防线发起猛攻,突破了几处阵地。陈诚的左翼作战军逐渐后撤,守军防线整体已经变形。日军继续向蕴藻浜方向猛攻,牛行方面的中国守备部队陷于苦战,伤亡较重,第三战区马上派新调来的廖磊第二十一集团军增援。
10月的第一天,日本陆海空军发起新的攻击。第三战区担心日军突破大场,威胁中央作战军的侧翼,组织了一次反攻。陈诚集团军、薛岳第十九集团军和廖磊集团军是反攻的主力,重点反攻蕴藻浜方向。
中国守军接连苦战了两个月,素质较好的老兵伤亡巨大,各部队战斗力大大下降,发起反攻之后,很快被日军各个击破。没几天,日军就突破了蕴藻浜,蒋介石急调廖磊集团军十个师加入中央军序列,动用其中的三个师从大场附近向南路日军反击,另派左翼军的四个团在广福南侧向北路日军反击,都没能突破日军阵地。
10月初,日军大本营决定将侵华战争的主攻方向从华北转向上海方面,急忙从华北、东北和日本国内抽调部队,组建了第十军增援上海的日军。
22日,日军集中三个师团进攻廖磊集团军,在庙行和陈家行之间突破守军阵地,向庙行和大场发起猛攻。孙立人的税警第四团驻守大场镇,日军连攻四天,发现税警第四团是块啃不动的硬骨头。孙立人对士兵们说:“你们好好把握住机会来杀这些攻打我们的万恶敌人。可是日本人在火力上比我们强,我们必须以谋取胜,切不可鲁莽而作无谓的牺牲。”