주인공 짐 홉킨스는 부모님이 운영하는 벤보여관을 돕는 10대이다. 어느 날, 뺨에 커다란 칼자국이 있는 뱃사람 한 명이 찾아온다. 그는 술에 취해 죽은 자의 궤짝 위에 열다섯 사람이라는 이상한 노래를 부른다. 그는 해적 플린트한테 받은 중요한 물건이 있다며 외다리 뱃사람이 오면 연락 주라고 은화 한 닢을 준다.
1월의 어느날 검둥개라 부르는 낯선 남자가 그를 찾아온다. 검둥개는 해적들의 공격 대상 신호인 검은 쪽지를 전한다. 둘은 칼싸움을 하고 검둥개는 도망친다.
며칠 뒤 짐의 아버지가 지병으로 돌아가신다. 아버지를 잃은 슬픔에 잠겨있을 때 초록색 천으로 두 눈을 가린 노인이 나타난다. 노인은 뱃사람에게 종이쪽지를 남기고 떠난다. 뱃사람은 두려움에 떨며 숨을 거둔다.
짐과 엄마는 해적들이 쳐들어오기 전에 그동안 못 받은 여관비를 챙겨 도망칠 계획이었다. 서둘러 돈과 서류 뭉치를 들고 여관을 빠져나와 다리 아래로 숨었다. 곧이어 해적들이 나타났다.
짐은 서류뭉치를 의사겸 치안판사인 리브지 선생과 트렐로니 씨에게 건넸다. 서류 뭉치는 보물지도였다. 트렐로니는 지도를 보더니 보물 찾기를 결심한다. 트렐로니는 요리사 존 실버를 고용한다. 그는 죽은 뱃사람이 말했던 외다리였지만 무서워 보이지 않았다.
스몰렛 선장은 보물 찾기 출항이 불만이다. 보물 때문에 배안에서 반란이 일어나지 않을까 걱정한다. 요리사 실버는 짐에게 앵무새 플린트를 소개해준다. 앵무새 이름은 유명한 해적이름 이름이라고 알려준다.
그날밤 짐은 사과를 꺼내려다 사과통에 빠졌다. 그 안에서 밤하늘을 보고 있는데 실버의 목소리가 들렸다. 실버는 해적 플린트 선장의 일원이었고 심지어 눈을 가렸던 노인과 검둥개랑 한패였다. 짐은 스몰렛 선장에게 이 사실을 알렸다.
선원들은 보트를 내려 육지로 향했다. 짐은 호기심에 보트를 타고 육지에 닿자마자 재빨리 달려 몸을 숨겼다. 실버는 같은 편이 되지않겠다는 선원들을 제거했다. 짐은 도망치다 무인도에 갇힌 벤건을 만난다. 그는 3년 전 해적 플린트 일당과 이 섬에 보물을 숨겼다고 말한다. 그때 히스파니올라호에서 대포와 총소리가 들리더니 해적국기가 휘날렸다.
짐과 벤은 플린트 선장이 만들었던 요새로 몸을 숨겼다. 배는 해적들에게 빼앗겼지만 리브지 선생과 일행은 무사했다. 리브지 선생일행은 화약과 총알, 식량을 챙겨 육지로 내려왔으며 해적과 맞서 싸우기로 결심했다.
실버는 요새로 찾아왔고 보물지도를 요구했다. 한바탕 전쟁은 치르고 해적무리는 도망쳤다. 그날밤, 짐은 벤이 숨겨 둔 보트를 타고 히스파니올라호의 닻줄을 끊었다. 멀어져가는 배 뒤편에 늘어진 밧줄을 잡고 배위로 올라갔다. 배 위에서는 핸즈와 빨간 모자를 쓴 남자가 밤새 싸우고 쓰러져 있었다. 짐은 해적깃발을 내렸다.
핸즈는 상처를 싸맬 붕대를 요구하며 짐에게 조정법을 알려줬다. 핸즈가 짐을 죽이려고 달려들 때 짐은 권총을 발사해 그를 바다에 빠트렸다. 짐은 배를 섬 뒤쪽에 숨기고 통나무집으로 돌아갔다. 그러나 그곳엔 실버 일행만 있었다.
사실 리브지 선생 일행은 배가 사라진 사실을 알고 보물은 필요 없으니 휴전을 요청했고 실버가 방심하는 틈을 타 모두 도망쳤다. 실버 일행과 붙잡힌 짐은 보물을 찾으로 출발했다. 숲 속에서 죽은 플린트 선장의 노랫소리가 들렸다. 해적들은 두려움에 얼굴이 파랗게 질렸다. 힘겹게 보물이 묻힌 장소를 찾았지만 보물은 없었다.
해적들이 실버와 짐을 죽이려는 순간 어디선가 총소리가 났다. 풀숲에서 리브지 선생과 벤건, 그레이가 총을 들고 나왔다. 짐과 실버는 리브지 선생의 작전 덕분에 목숨을 구했다.
사실, 해적들이 통나무를 습격한 날, 선생은 벤 건을 찾아가 도움을 청했다. 벤 건은 오랫동안 섬을 헤매다가 보물을 찾아 자기가 사는 동굴로 보물을 전부 옮겨 놓은 상태였다.
다음 날, 리브지 선생은 배가 사라진 사실을 알고 지도와 식량을 해적에게 넘겨며 협상을 요구한 것이다. 벤건의 동굴에는 염소 고기와 나무 열매등 먹을 것이 충분했기 때문이다.
일행은 금은보석을 배에 실었다. 도망친 해적 세명이 먹을 만큼 충분한 식량과 총, 약을 남겨놓고 배는 떠났다. 어차피 그들은 돌아가봤자 교수형 당할 것이 뻔하기 때문이다.
며칠 뒤 브리스틀 항구에 도착했다. 보물은 모두가 나눠 가졌다. 스몰렛 선장은 다시는 배를 타지 않았다. 리브지 선생은 여전히 아픈 사람들을 돌봤고, 벤겐은 트렐로니 씨 저택의 문지기로 일을 했다. 실버는 돌아오는 길에 들렀던 항구에서 금화 한 자루를 훔쳐 도망쳤다.
이 소설은 호기심 많은 소년의 모험담으로 낯선 세계를 향해 도전하라는 내용을 담고 있다. 모험 속에는 많은 시련과 위기가 찾아오겠지만 그 때마다 지혜와 용기를 발휘해 인생을 개척해 나가라는 의미가 담겨 있다. 또한 등장인물을 통해 물질을 향한 인간의 탐욕을 낱낱이 드러낸다. 인간의 욕망은 끝이 없고, 슬기롭게 다스리지 못한다면 파멸에 이른다는 교훈을 알려주었다.