1231년 몽골 장수 살리타가 쳐들어왔다. 집권자 최우는 1232년 바다에 약한 몽골군을 피해 도읍을 강화도로 옮기고 장기전에 들어갔다. 같은 해 처인성(용인)에서는 승려 김윤후와 백성들이 살리타를 죽여 몽골군을 물러가게 했다. 그러나 몽골은 1259년 무렵까지 여러 차례 쳐들어와 국토를 짓밟았고, 경주 황룡사 9층 목탑 같은 문화재도 불탔다.
몽골의 침입으로 옛 대장경(초조대장경)이 불타자, 고려는 부처의 힘으로 나라를 지키려는 바람을 담아 1236년부터 1251년까지 다시 대장경을 새겼다. 8만 장이 넘는 이 목판이 팔만대장경(재조대장경)으로, 지금 합천 해인사에 보관되어 있다. 이를 보관하는 장경판전은 1995년 세계유산, 대장경판은 2007년 세계기록유산이 되었다.
1258년 최씨 정권이 무너지고 1270년 고려 왕실은 몽골과 화해하며 개경으로 돌아갔다. 그러자 무신 정권의 군사 기반이던 삼별초는 배중손 등의 지휘로 반기를 들고 진도와 제주도로 옮겨 가며 1273년까지 항쟁을 이어 갔다.