八旗兵剛擊敗杜鬆軍,偵騎又飛報開原路馬林軍至。馬林率軍“出三岔口,營稗子穀,夜聞杜鬆敗,林軍遂嘩”(《明史·潘宗顏傳》第291卷)。天明,與八旗軍相遇。
初二日,馬林軍在薩爾滸西北三十餘裏富勒哈山的尚間崖安營,浚濠塹,嚴斥堠(huò)。馬林見杜鬆兵敗,所部軍嘩,急忙轉攻為守,形成“牛頭陣”:馬林親自率軍駐尚間崖,依山結成方陣,環營挖三層壕,壕外排列騎兵,騎兵外布槍炮,火器外設騎兵,壕內布列精兵;潘宗顏在飛芬山紮營,杜鬆後部——龔念遂在斡琿鄂漠結營,兩營相距數裏,形成犄角。馬林雅好詩文,交遊名士,圖虛名,無將才。他自以為“牛頭陣”既能互相救援,又能以戰車和壕塹阻遏後金騎兵的馳突,以炮銃和火箭製服後金的弓矢。但他消極防禦,兵力分散,鼎足成陣,各營蠶縛,形成被動挨打的局麵,給努爾哈赤提供可乘之機。
聰明的努爾哈赤盡管有三倍於敵的兵力,卻沒有分兵圍攻明軍的三個營,而是集中兵力,先砍其“牛頭陣”的一隻犄角——龔念遂營。參將龔念遂、遊擊李希泌統領步騎,楯車屯營,環營浚壕,排列槍炮,嚴密防守。努爾哈赤攻打龔念遂營,也沒有四麵包圍,而是親自率領一千精騎,朝著其薄弱的一隅猛衝,“攻打進去,推倒楯車”(《滿文老檔·太祖》第8卷),突破一個缺口。八旗兵像洪水似地從缺口湧進龔念遂營,騎兵踩著死人和活人,衝突、砍削、狂奔、蹂躪。龔念遂營破戰死。努爾哈赤在斡琿鄂漠得勝之後,躍馬急馳尚間崖。
尚間崖的馬林營防守嚴整。努爾哈赤命“先據山巔,向下衝擊”(《清太祖高皇帝實錄》第6卷),但見馬林營內與壕外兵彙合,又命“停止攻取山上,下馬徒步應戰”。大貝勒代善、二貝勒阿敏、三貝勒莽古爾泰各率兵鼓勇急進,衝向馬林營。營中明軍發鳥槍、放巨炮,但“火未及用,刃已加頸”(於燕芳:《剿奴議撮》)。兩軍短兵相接,騎兵橫馳,利刃飛舞。後金兵受傷者甚多,勇將揚古利“裹創係腕”(《滿洲名醫傳》第1卷),率牛錄額真馳擊,兵馬齊擁激戰。正在酣戰之際,馬林恐甚,策馬先奔。《明神宗實錄》記載:“敵至,林甚恐,遂提部下兵,避其鋒以去。”主將馬林先遁,副將麻岩戰死,餘眾大潰,全營皆沒。明軍“死者遍山穀間,血流尚間崖下,河水為之盡赤”(《清太祖高皇帝實錄》第6卷)。努爾哈赤攻下尚間崖馬林營,又馬不停蹄地馳往飛芬山潘宗顏營。
飛芬山的潘宗顏據山紮營,楯車為壘,環列火器,督軍堅守。努爾哈赤指揮八旗,令一半兵下馬,重甲兵持刀槍在前,輕甲兵操弓矢在後;另一半兵騎馬,包圍飛芬山——步騎冒死前進,仰山而攻。潘宗顏“奮呼衝擊,膽氣彌厲”(《明史·潘宗顏傳》第291卷)。明軍居高臨下,施發火器。八旗軍突破營陣。兩軍混戰、周旋、廝殺、肉搏。炮隊迎步兵,鐵騎衝炮隊;蜿蜒動蕩,血肉橫飛。馬林“牛頭陣”的另一隻犄角也被砍掉,潘宗顏營潰戰死。其死時“骨糜肢裂,慘不忍聞”(《明神宗實錄》第580卷)。時葉赫貝勒金台石、布揚古“約助明兵,與潘宗顏合,至開原中固城,聞明兵敗,大驚而遁”(《清太祖高皇帝實錄》第6卷)。
至此,明北路馬林軍,除主將馬林僅以數騎逃回開原外,全軍覆沒。先是,開原道兵備僉事潘宗顏知馬林無將才,在出師之前致書經略楊鎬言:
林庸懦,不堪一麵之寄,乞易別帥當此重任,而以林遙作後應,庶其有濟;不然,不惟誤事,且恐此身實不自保。(《明神宗實錄》第580卷)
楊鎬不聽,果然馬林兵敗。