En Ecosse, le jeune David Balfour se rend chez son oncle Ebenezer dans le but de prendre possession de son héritage. Mais il est enlevé et embarqué de force à bord d'un navire en partance pour les Carolines, le but étant de le vendre comme esclave. Un jour le bateau recueille un naufragé, Alan Breck. Ce dernier est un Highlander jacobite, rescapé de la bataille de Culloden, avec qui David se lie d'amitié. Après un naufrage, ils retournent en Écosse où ils échappent aux tuniques rouges.