南道礼山郡凤首山上)据险固守。
任存城是一座建在山顶上的石头城,海拔四百多米,异常险峻。新罗军队因粮草缺乏撤军回返,刘仁轨兵力单薄无法独立进攻。道琛与福信趁机招揽残部,重新恢复了实力。
高宗诏令新罗发兵,新罗国王金春秋奉诏派大将金钦支援,却被百济所败,狼狈逃回新罗不敢再出来。福信杀掉了道琛和尚,独掌大权与唐军对抗。
四月十六日,高宗将作战计划进行了微调。把刘伯英拿掉,让苏定方担任平壤道行军总管,将精通骑兵作战的契苾何力调整到了辽东道,让任雅相担任浿江道行军总管,又安排萧嗣业统率胡人部落予以配合。以上共计三十五军,水陆并进。
苏定方攻灭百济,对半岛地形比较熟悉;任雅相、萧嗣业都曾跟随苏定方剿灭过西突厥,这样的人员搭配显然更为合理。
豪情满怀的李治想要效仿他的父亲李世民挂帅亲征,却遭到皇后武则天的坚决反对,她知道丈夫身体不好经常头痛,不愿让他到战场冒险。李治只得接受了妻子劝说,坐镇东都指挥。
七月份,各路唐军陆续接敌。
苏定方在浿江(今朝鲜义州)首战获胜,乘胜包围了高句丽国都平壤。
战至九月,辽东道唐军进至鸭绿江。渊盖苏文之子渊男生率数万精兵于江边顽强阻击,唐军多次进攻均无果而终。
关键时刻,猛将契苾何力赶来。此时的鸭绿江天寒地冻,河水已全部冻结,契苾何力率唐军踏着坚冰渡江,高声呼喝着攻击向前。高句丽守军被唐军的勇悍吓的肝胆俱裂,全军崩溃四散,唐军穷追数十里、斩首三万级,渊男生侥幸逃出生天。
恰在此时,因忠于唐室的回纥酋长婆闰逝世,他侄子比粟毒联合同罗、仆骨在大唐西境闹事。高宗担心陷入两线作战,下诏召回辽东道唐军,契苾何力奉命班师。
龙朔二年(662年)二月十四日,浿江道行军总管任雅相于军中病故。
二月十八日,左骁卫将军庞孝泰在平壤附近的蛇水边上,遭到高句丽优势兵力围攻,全军覆没,庞孝泰与他十三个儿子全部英勇战死。
苏定方在平壤城下打了七个多月,始终无法攻克。加之失去辽东道唐军策应,又遇天降大雪,只得解围收兵。
高句丽凭借地利之势、顽强意志以及一点小小的运气,逼退了强大的唐军,再次躲过一劫。