고구려-당 전쟁
무엇보다도 과거 645년 제1차 고구려-당 전쟁 때는 개모, 요동, 백암 등 요동의 주요 성들이 함락 되었지만 고구려 주력부대는 보존되어 안시성 근처 주필산에서 당나라의 군대와 대치하고 있었고, 661년 제2차 고구려-당 전쟁 때는 비록 압록강 유역에서 연남생이 이끄는 고구려 군대가 궤멸하고 수도 평양성이 포위되었지만 역시 고구려의 주력부대는 요동에 존재하고 있어 당나라 군대의 작전 행동에 제약이 있을 수 밖에 없었다. 하지만 제3차 고구려-당 전쟁에서는 요충지 신성의 함락과 연남생이 이끄는 투항세력에 이어 금산전투를 통하여 기본적으로 고구려 군의 주력 정예부대는 소멸되어 버렸고 이후 전쟁의 전개는 당과 고구려의 군사적 균형이 무너져 고구려의 일방적인 열세로 돌아서게 된다.
고구려-당 전쟁
한편 당나라 고종은 고구려를 협공하기 위해 신라에게도 군사를 징발케 하여 남쪽으로 부터 진군하게 하였다. 이에 신라 문무왕은 호응하고자 김흠순(金欽殉)·김인문(金仁問)을 장군으로 임명하여 군사를 출동시켰다. 이 때 김유신은 병중이라 출진하지 못하였다. 668년 음력 6월, 고구려의 남부의 군사 요충지였던 대곡성(大谷城)·한성(漢城) 등 2군 12성이 항복하였다. 특히 고구려 한성(현재 황해도 재령·사리원으로 추정된다)은 국내성·평양성과 더불어 고구려의 3성이라고 불리던 고구려 남부의 정치·경제·군사·인구의 중심지였다.