FBI 요원 프랭크(Frank LaCrosse: 데니스 퀘이드 분)는 14개월 동안 18명을 살해한 정체불명의 연쇄살인범을 쫓고 있다. 범인은 매우 지능적인 인물로, 증거도 목격자도 남기지 않는다. 게다가 범인은 대담하게도 프랭크의 집에 침입해, 그의 아들까지 납치하면서 범행을 즐기기까지 한다. 이는 수사관이 자신과 직접적인 관계가 있는 사건은 맡지 못한다는 점을 악용한 것으로 자신을 집요하게 뒤쫓는 프랭크가 더 이상 이 사건에 개입하지 못하게 하기 위한 것이다. 그러나 프랭크는 이에 굴하지 않고 아들과 범인을 계속 추적한다. 그러던 중 텍사스의 한 마을에서 살인사건이 발생한다. 3개월 동안 잠잠하던 살인마가 활동을 재개한 것이다. 한편 사고가 난 마을에서 얼마 떨어지지 않은 곳에서 정체를 알 수 없는 딕슨(Lane Dixon: 재리드 레토 분)이라는 청년이 밥(Bob Goodall: 대니 글로버 분)이라는 사람의 차를 얻어 타게 되고, 호감을 갖게 된 두 사람은 함께 여행을 하게 된다. 이어 록키 산맥 인근의 마을에서, 자동차 정비소 주인이 살해당하는 사고가 발생한다. 이 소식을 접한 프랭크는 본능적으로 범인의 소행임을 직감하고, 사건현장으로 달려온다. 그리고 범인이 자신에게 남긴 수수께끼 같은 메시지를 풀게 되는데 내용은 범인이 현재 기차를 타고 빌리라는 마을로 향하고 있다는 것이다. 록키 산맥의 대 설원을 가르는 화물열차 안에서 밥과 딕슨을 발견한 프랭크는 밥을 범인으로 알고 그를 체포하려 하지만...