4月17日,朱可夫在主攻地段每公里集中250-300门火炮猛轰德军阵地,各坦克集团军协同步兵兵团快速推进,绕过德军支撑点,将摧毁各支撑点的任务留给第二梯队。德军多次发起反冲击,均被苏军近卫第8集团军击退。白俄罗斯第1方面军成功突破德军第二防线。
4月18日,德军统帅部几乎把全部战役预备队都投入交战。苏军主力仅推进3-6公里,靠近德军第三条防线。苏军统帅部认为,白俄罗斯第1方面军前进缓慢有碍于原定计划,遂命令乌克兰第1方面军和白俄罗斯第2方面军协助进攻。
为了执行最高统帅部的指示,朱可夫要求炮兵向第一梯队靠近,以便实施更密切的协同,并命令航空兵增加支援力度。在之后的两昼夜里,苏军终于攻克德军第三防线,在19日突破德军的奥得河防线。
■ 南路苏军突破尼斯河
乌克兰第1方面军在科涅夫的指挥下,也于4月16日6时在尼斯河畔发起进攻。炮火准备后,苏军先遣分队于6时55分开始强渡尼斯河。7时5分,苏军轰炸机对德军枢纽和指挥所进行猛烈轰炸。苏军第一梯队迅速占领河岸登陆场。当天结束前,苏军突破德军第一防线。
4月17日,苏军开始攻击德军第二防线。德军从预备队中抽出4个坦克师,实施反突击。根据这种情况,苏军指挥部命令近卫第1、第4坦克集团军主力全部投入交战,粉碎了德军的多次反突击,最终突破德军第二防线。17日夜,乌克兰第1方面军的近卫第3、第4坦克集团军转向进攻柏林。此时,德军正试图向斯普里河防区增兵。为此,苏军计划以航空火力迟滞德军,同时在防御薄弱的科特布斯、斯普里堡地段实施突击,加速进攻斯普里河。
4月18日,乌克兰第1方面军的第7机械化军和第27步兵集团军的部队首先强渡斯普里河成功。19日晨,近卫坦克第3、第4集团军和第13合成集团军全部渡过斯普里河。至此,乌克兰第1方面军突破德军三道防线和两道江河障碍,完成了对尼斯河防线的突破任务。
■ 北路苏军牵制“维斯瓦”
白俄罗斯第2方面军由于实施东波美拉尼亚战役而耽误了参加柏林战役的时间,没能和另外两个方面军一起进攻。4月18日,苏军统帅部考虑到白俄罗斯第1方面军进展迟缓,命令白俄罗斯第2方面军强渡奥得河。该方面军于当日发起进攻,用2天时间强渡东奥得河,肃清了东、西奥得河间的德军,有效牵制了德军“维斯瓦”集团,保障了白俄罗斯第1方面军的侧翼安全。
柏林城外分割合围
乌克兰第1方面军的近卫第3、第4坦克集团军以每昼夜30-50公里的速度向西北攻击前进,于4月21日直逼柏林外层防御。同日,白俄罗斯第1方面军突破柏林外层防御,逼近东北郊。为了分割被围德军,21日,乌克兰第1方面军将第二梯队的第28集团军投入交战。23日,白俄罗斯第1方面军的第3集团军也投入交战。各合成集团军利用坦克军团的战果,向易北河推进。
鉴于柏林岌岌可危,4月22日午后,德军在帝国总理府举行最后一次作战会议。决定调回守卫易北河防线的第12集团军,开赴波茨坦,接应从柏林东南突围的第9野战集团军。德军还向苏军第52集团军和波军第2集团军的左翼发动突击,直到24日,德军攻势被遏制。
4月24日,白俄罗斯第1方面军的部队在柏林东南与乌克兰第1方面军的部队会师,于25日在城西封闭了包围圈。至此,柏林的50万德军被合围并分割成两部分:法兰克福-古宾集团和城区卫戍集团。