수나라 양량은 고구려군이 요하를 건넜다는 얘기를 듣고 군사들을 재촉한다. 노장 고경(오성열)은 군사들이 지치면 전투에 차질이 생긴다고 충언하지만 양량은 서두르라고 다그친다. 조의들은 치루산 계곡에서 수나라 대군을 교란시킬 작전을 짠다. 을지문덕(이정길)은 임시 군영을 설치하고 공격 준비태세를 갖춘다. 대장군 강이식(김시원)과 영양왕(이효정)의 처남인 온달장군의 후손 온군(조용태)이 선봉에 나선다.
양량의 군대가 치루산 계곡으로 들어온다. 조의들은 불화살을 쏜다. 당황한 양량은 침착하지 못하게 무조건 화살을 쏜다. 조의들은 수나라의 화살을 모은다. 어렵게 영주성에 도착한 양량은 선제 공격에 나선다. 강이식과 온군, 말갈의 아소친(홍성찬)은 치고 빠지는 작전으로 수나라 군사들을 끌어 들인다. 고구려군은 미리 짜여진 작전대로 차근차근 전투를 치른다. 다급해진 양량은 고경의 조언을 듣지 않고 무조건 공격한다. 요하에 진을 치고 총공세를 준비하던 고구려군은 수나라 군대가 가까이 오기만을 기다리는데…