日军主力于10月25凌晨3点半钟横渡鸭绿江,各自向预定目标进发,天色未明便以野炮队发出第一声炮响为号,压向清军壁垒。
清军由于侦察不力,对日军行动懵然不知,突遇日军大兵渡江进击,大为吃惊,当面的清将马金叙据守高地,殊死力战。此时在江的左岸,日军炮队向清军壁垒倾注榴霰弹,以增援步兵。清军也很善战,奋力抵抗,但日军右翼部队攀上高丘布设放列,向清军侧面俯瞰轰击,致使清军垒中大乱,终于溃逃。
日军渡江之战自上午6点15分开始,在7点45分结束,酣战仅一个半小时。清军于8点40分渡过靉河的支流,向九连城方面逃去。
这时,在虎山的北面山地,聂士成及马玉崑的部下向日军发起反攻。清军步骑二千余人,头上旌旗飞舞,排成横队前进。聂、马所部得到九连城四门“克虏伯”野炮及增援部队的援助。炮队利用其低伸的弹道急袭日军左翼,令日军不敢前进,只得请求援兵。日军得到增援后,左右相应,轰击清军各翼,清军不支,退保梨子园。日军左翼部队乘势冲击虎山堡垒的侧背面,各部一起发力,呐喊冲锋,终于占领虎山。清军崩溃,争先渡过靉河,在中流为日军狙击者甚多。清军支离分裂,从间道向凤凰城方面逃走,战斗结束在上午10点半。