Szlachetny komandor Crawford (Alec Guinness) jest dowódcą brytyjskiego okrętu wojennego H. M. S. Defiant. Stara się zachować spokój na pokładzie i poskromić Scotta-Padgeta (Dirk Bogarde), brutalnego pierwszego oficera. Gdy Carwford odnosi rany w bitwie morskiej z Francuzami, dowódcą mianowany zostaje znienawidzony przez wszystkich Scott-Padget. Oburzony takim obrotem spraw majtek Vizard (Anthony Quayle) prowadzi załogę do buntu przeciwko niemu i przejmuje dowodzenie nad okrętem. Crawford przekonuje Vizarda, by załoga dołączyła do floty brytyjskiej, która staje do walki z Francuzami szykując się do inwazji na Anglię. Zdaje sobie bowiem sprawę, że w tylko ten sposób mogą uniknąć kary za bunt. Sprawy komplikują się, gdy opętany żądzą zemsty marynarz morduje Scott-Padgeta. Członkowie załogi Przeklętego okrętu muszą teraz podjąć decyzję, czy walczyć będą w obronie ojczyzny czy swojej własnej.
Squire Trelawney (Walter Fitzgerald), doktor Livesey (Denis O'Dea) i Jim Hawkins (Bobby Driscoll) postanawiają odnaleźć ukryty skarb kapitana Flinta. W tym celu wynajmują statek oraz ludzi i wyruszają na karaibską wyspę, gdzie według mapy mają być zakopane kosztowności. Nie zdają sobie jednak sprawy, że na okręcie, którym płyną, znajduje się spora liczba piratów ze starej załogi Flinta, w tym ich nowy przywódca - Długi John Silver (Robert Newton).