개리슨은 작은 마을로 뉴욕 시경에 근무하는 경찰들이 모여 사는 곳으로 '캅랜드'라 불린다. 이곳은 경찰관 레이(하비 카이틀)를 중심으로 뭉쳐진 곳으로 겉으론 평온하지만 비리로 가득차 있다. 어느날 레이의 조카이자 경찰인 비비치가 사람을 죽이는 사건이 발생하고 이를 은폐하기 위해 레이는 비비치가 자살한 것처럼 속이고 비비치를 캅랜드에 숨겨놓는다. 비비치 사건에 의심을 품은 내사관 모 틸든(로버트 드 니로)이 캅랜드로 찾아온다. 그는 마을의 보안관인 프레디(실베스터 스탤론)에게 협조를 요구하지만 보복이 두려운 프레디는 협조를 거절한다. 한편 레이는 숨어있는 비비치가 성가셔지자 그를 수장하려고 하지만 실패하고, 레이와 경찰의 부패를 참지 못한 프레디는 그들과 맞서기로 결심하는데...