고구려-당 전쟁
무엇보다도 과거 645년 제1차 고구려-당 전쟁 때는 개모, 요동, 백암 등 요동의 주요 성들이 함락 되었지만 고구려 주력부대는 보존되어 안시성 근처 주필산에서 당나라의 군대와 대치하고 있었고, 661년 제2차 고구려-당 전쟁 때는 비록 압록강 유역에서 연남생이 이끄는 고구려 군대가 궤멸하고 수도 평양성이 포위되었지만 역시 고구려의 주력부대는 요동에 존재하고 있어 당나라 군대의 작전 행동에 제약이 있을 수 밖에 없었다. 하지만 제3차 고구려-당 전쟁에서는 요충지 신성의 함락과 연남생이 이끄는 투항세력에 이어 금산전투를 통하여 기본적으로 고구려 군의 주력 정예부대는 소멸되어 버렸고 이후 전쟁의 전개는 당과 고구려의 군사적 균형이 무너져 고구려의 일방적인 열세로 돌아서게 된다.
고구려-백제 전쟁
501년 백가의 난이 터졌으나 이를 진압한 무령왕은 신라를 돕고 백제의 힘을 과시하기 위해 502년 11월에 고구려 국경을 침범하였다. 이는 전주곡이었다. 백제는 503년 11월에 달솔(達率) 우영(優永)을 보내, 군사 5천 명을 거느리고 수곡성(水谷城)으로 쳐들어 왔다. 이로써 4차 여제 전쟁이 터졌다. 고구려는 추위에 약한 백제군이 쳐들어 올지 몰라 위태로웠지만 막아내고 수습 후 506년 11월에 장수를 보내 백제를 쳤으나 큰 눈이 내려 사졸들이 동상을 입고 돌아왔다. 이 번엔 고구려가 추위를 이용해 왔지만 자신의 꾀에 당하고 말았다. 분통이 터진 문자명왕은 507년 10월에 재침공하였다. 장수 고노(高老)를 보내, 말갈과 함께 백제의 한성(漢城)을 칠 것을 꾀하여, 횡악(橫岳) 밑으로 나아가 주둔하였는데, 백제가 군사를 내어 맞아 싸우므로 물러났다. 문자명왕은 깊이 깨닫고 드디어 512년 9월에 백제를 침략하여 가불(加弗)·원산(圓山) 두 성을 함락시키고, 남녀 1천여 명을 사로잡았다. 그러나 무령왕이 용맹스러운 기병 3천 명을 거느리고 위천(葦川)의 북쪽에서 싸웠다. 고구려 사람들은 왕의 군사가 적은 것을 보고 만만히 여겨 진(陣)을 치지 않았다. 무령왕은 기묘한 계책을 내어 급히 쳐서 이를 크게 격파하였다.