八旗兵刚击败杜松军,侦骑又飞报开原路马林军至。马林率军“出三岔口,营稗子谷,夜闻杜松败,林军遂哗”(《明史·潘宗颜传》第291卷)。天明,与八旗军相遇。
初二日,马林军在萨尔浒西北三十余里富勒哈山的尚间崖安营,浚濠堑,严斥堠(huò)。马林见杜松兵败,所部军哗,急忙转攻为守,形成“牛头阵”:马林亲自率军驻尚间崖,依山结成方阵,环营挖三层壕,壕外排列骑兵,骑兵外布枪炮,火器外设骑兵,壕内布列精兵;潘宗颜在飞芬山扎营,杜松后部——龚念遂在斡珲鄂漠结营,两营相距数里,形成犄角。马林雅好诗文,交游名士,图虚名,无将才。他自以为“牛头阵”既能互相救援,又能以战车和壕堑阻遏后金骑兵的驰突,以炮铳和火箭制服后金的弓矢。但他消极防御,兵力分散,鼎足成阵,各营蚕缚,形成被动挨打的局面,给努尔哈赤提供可乘之机。
聪明的努尔哈赤尽管有三倍于敌的兵力,却没有分兵围攻明军的三个营,而是集中兵力,先砍其“牛头阵”的一只犄角——龚念遂营。参将龚念遂、游击李希泌统领步骑,楯车屯营,环营浚壕,排列枪炮,严密防守。努尔哈赤攻打龚念遂营,也没有四面包围,而是亲自率领一千精骑,朝着其薄弱的一隅猛冲,“攻打进去,推倒楯车”(《满文老档·太祖》第8卷),突破一个缺口。八旗兵像洪水似地从缺口涌进龚念遂营,骑兵踩着死人和活人,冲突、砍削、狂奔、蹂躏。龚念遂营破战死。努尔哈赤在斡珲鄂漠得胜之后,跃马急驰尚间崖。
尚间崖的马林营防守严整。努尔哈赤命“先据山巅,向下冲击”(《清太祖高皇帝实录》第6卷),但见马林营内与壕外兵汇合,又命“停止攻取山上,下马徒步应战”。大贝勒代善、二贝勒阿敏、三贝勒莽古尔泰各率兵鼓勇急进,冲向马林营。营中明军发鸟枪、放巨炮,但“火未及用,刃已加颈”(于燕芳:《剿奴议撮》)。两军短兵相接,骑兵横驰,利刃飞舞。后金兵受伤者甚多,勇将扬古利“裹创系腕”(《满洲名医传》第1卷),率牛录额真驰击,兵马齐拥激战。正在酣战之际,马林恐甚,策马先奔。《明神宗实录》记载:“敌至,林甚恐,遂提部下兵,避其锋以去。”主将马林先遁,副将麻岩战死,余众大溃,全营皆没。明军“死者遍山谷间,血流尚间崖下,河水为之尽赤”(《清太祖高皇帝实录》第6卷)。努尔哈赤攻下尚间崖马林营,又马不停蹄地驰往飞芬山潘宗颜营。
飞芬山的潘宗颜据山扎营,楯车为垒,环列火器,督军坚守。努尔哈赤指挥八旗,令一半兵下马,重甲兵持刀枪在前,轻甲兵操弓矢在后;另一半兵骑马,包围飞芬山——步骑冒死前进,仰山而攻。潘宗颜“奋呼冲击,胆气弥厉”(《明史·潘宗颜传》第291卷)。明军居高临下,施发火器。八旗军突破营阵。两军混战、周旋、厮杀、肉搏。炮队迎步兵,铁骑冲炮队;蜿蜒动荡,血肉横飞。马林“牛头阵”的另一只犄角也被砍掉,潘宗颜营溃战死。其死时“骨糜肢裂,惨不忍闻”(《明神宗实录》第580卷)。时叶赫贝勒金台石、布扬古“约助明兵,与潘宗颜合,至开原中固城,闻明兵败,大惊而遁”(《清太祖高皇帝实录》第6卷)。
至此,明北路马林军,除主将马林仅以数骑逃回开原外,全军覆没。先是,开原道兵备佥事潘宗颜知马林无将才,在出师之前致书经略杨镐言:
林庸懦,不堪一面之寄,乞易别帅当此重任,而以林遥作后应,庶其有济;不然,不惟误事,且恐此身实不自保。(《明神宗实录》第580卷)
杨镐不听,果然马林兵败。