중공군은 10월 19일 압록강을 은밀히 건너 참전하였다. 그들은 청천강 북쪽으로 전개하여 방어태세를 갖추고 있다가 10월 25일 아군의 공격을 되받으며 기습적 대공세를 취하였다. 이것이 중공군의 1차 공세였다. 중공군은 이후에도 4차례의 공세를 가하였으나 그 세력을 상실하고 방어로 전환하였다.

유엔군은 공산군의 1차 공세를 청천강선에서 저지하고 11월에 최종공세를 다시 폈으나 이미 30개 사단으로 증강된 중공군이 2차 공세로 맞섬에 따라 청천강 북쪽과 장진호 일대에서 결전이 전개되었다. 아군은 청천강에서 포위망을 벗어나는 과정에서 많은 손실을 입고 평양과 흥남 철수를 단행하였다.
이어 중공군은 재편성한 북한군과 연합하여 1951년 1월 1일을 기해 3차 공세를 하였다. 중공군은 전방에 배치된 한국군의 방어선을 돌파하고 서울을 재점령하였다.


 
유엔군과 한국군은 위기를 벗어나기 위해 반격작전을 개시하였으며, 2월 한강남쪽까지 진출할 무렵 다시 중공군의 4차 공세를 받았다. 그러나 아군은 지평리-원주선에서 중공군에게 큰 타격을 입히면서 반격을 계속하여 3월 15일 서울을 다시 수복하는데 성공하였다.
 
 
그러나 이 무렵 중공군은 만주의 추가부대가 투입되고 원산부근의 부대도 전선으로 합류함으로써 총 51개 사단으로 증강되었으며, 이들은 4월 22일 다시 5차 공세를 시작하였다.

춘계공세에는 공산군의 병력과 유엔군의 화력이 최대로 동원되었다. 아군은 즉각 반격에 나서 6월 중순까지 임진강-연천-철원-김화-화천-간성선을 확보하였으며, 이로 인해 중공군은 방어로 전환하였다.

유엔군은 중공군이 인해전술로 계속 공격할 것에 대비하여 철군 계획을 수립하는 한편, 핵무기 사용을 포함한 중공 본토 폭격, 해안봉쇄 등의 확전 조치도 심각하게 검토하고 있었다.