西线,八月初九日,明军进抵平壤城下,与马场信房的第一军团20000人战于平壤城;
平壤城东有大同、长庆二门,南有芦门、含毯二门,西有普通、七星二门,北有密台门,有牡丹峰高耸,地形险要。
张溶的部署如下:
松江守备-张鈇率领步兵当先,辽东参将郭新良率领骑兵居后,攻击北部要塞牡丹峰;
中军台州守备张元勋、右军杭州卫备倭指挥同知李超进攻城西七星门;
左军辽东总兵杨照、杭州卫备倭署参将刘恩至领兵进攻城西普通门;
总兵俞大猷与朝鲜将领兵使李湛、防御使金大中乔装为朝鲜军麻痹日军,力攻城南芦门;
主帅张溶督阵。
明军主力将进攻平壤的南、西、北三个方向,东面给日军留出退军路线。
八月十日攻城开始,明军早早就在平壤城外挖掘了隧道,这还是去年张信安排人以挖矿、修地窖等各种名义在城外挖的隧道直通城内一处张信买下的大宅。
当时明军配有佛朗机炮、虎蹲炮、灭虏炮等火炮数百门,日军火绳枪虽然略优于明军火铳,但日军却没有明军威力强大的火炮。
天亮,俞大猷令明军脱去伪装,露出明军衣甲。西城联军主力辽东总兵杨照,杭州卫备倭署参将刘恩至张信安排的隧道突入城内与日军展开巷战。战至半夜,日军不支,马场信房率领残兵退守城北一隅风月楼,此时李如松军共斩首3000人。入夜,日军自东南方向突破,渡过大同江向汉城退却,但半路上松江守备-张鈇,辽东参将郭新良沿途早就有设置伏兵等候,直接把马场信房阻挡在了大同江边。
马场信房命令部将犬童赖安、深水长治、冈本赖氏等九州将领不记姓名的猛攻张鈇所部想冲出一条路来,但张鈇拿出张信之前给过的锦囊,让懂得日语的士兵喊出:九州人不应该为了武田家不正义的战争牺牲姓名,投降吧明军优待俘虏。
本来九州籍的将领就反感要命的时候全他们上,分钱的时候都武田家的人去,现在这样要命的场面还被拉去送死,犬童赖安、深水长治、冈本赖氏部下7000多人直接跑向明军投降,而马场信房那边也比较麻烦被后面游击俞大猷与朝鲜将领兵使李湛、防御使金大中的追兵赶上了,朝鲜士兵因为国仇家恨和日军打起来都非常玩命根本不给马场信房逃跑的机会,随着围过来的明军越来越多,九州籍的士兵很多都跑向明军投降,大同江边马场信房找来了保科正俊作为自己的介错人,武田家名将就这样在大同江边自杀了,之后保科正俊也想自杀时候明军骑兵过来直接把他俘虏后,总大将和其他大将不是死就是被俘,日军于是停止战斗投降了
此战共歼灭日军一万余人,烧杀溺毙不计,被俘7912人;
八月十九日,明军进抵开城,击溃未及撤离的日军一部,占领开城。