덴마크의 엘시노 성(Royal Castle Of Elsinore, Denmark), 국왕이 타계하자 왕의 동생 클로디어스(Claudius : 알란 베이츠 분)는 전왕의 왕비이자 형수인 거트루드(Gertrude : 글렌 클로스 분)를 아내로 맞이하고 왕위에 오른다. 왕자 햄릿(Hamlet : 멜 깁슨 분)은 어머니의 성급한 재혼에 충격을 받는데 선왕의 망령(The Ghost : 폴 스코필드 분)이 나타나 자신이 동생에게 독살되었다고 말한다. 햄릿은 망령의 존재를 의심하면서도 왕의 마음을 떠보기 위해 국왕 살해 사건을 연극으로 해보인다. 왕의 안색이 변해 일어서자 햄릿은 숙부의 범행에 대한 심증을 굳힌다. 그 뒤부터 실성한 척하며 왕을 죽일 기회를 노리는데 재상인 폴로니우스(Polonius : 이안 홈 분)를 왕으로 오인해 죽이게 된다. 그러자 햄릿을 사랑하던 폴로니우스의 딸 오필리아(Ophelia : 헬레나 본햄 카터 분)는 괴로운 나머지 미쳐서 죽게 된다. 왕은 햄릿을 영국으로 보내 죽이려 하지만 햄릿은 도중에 되돌아온다. 폴로니우스의 아들 레어티즈(Laertes : 나다니엘 파커 분)는 왕과 짜고 햄릿을 죽이기 위해 칼에 독을 바른 뒤 왕과 왕비 앞에서 펜싱 경기를 벌인다. 그러나 왕비는 독주에 죽고 국왕과 레어티즈는 햄릿의 칼에 죽는다. 레어티즈의 독묻은 칼에 찔린 햄릿 역시 왕을 죽인 뒤 숨을 거둔다.