Na początku XIX wieku w Bergamo nordycki oficer William Wilson nalega księdza o spowiedź z zabicia człowieka. Wilson opowiada, że już od dzieciństwa wykazywał sadyzm. Do szkoły oficerskiej przybywa nowy uczeń mający to samo imię i nazwisko co Wilson. Pomiędzy chłopcami tworzy się rywalizacja, która powoduje relegowanie obu ze szkoły. Wkrótce Wilson zapisuje się do uniwersytetu medycznego. Dokonuje kolejnego aktu sadyzmu porywając dziewczynę z ulicy i chcąc zrobić na niej żywcem sekcję zwłok. Przeszkadza mu w tym drugi William Wilson, który teraz wygląda dokładnie tak jak jego imiennik. Po opuszczeniu uniwersytetu Wilson zaciąga się do austriackiej armii. Z jego powodu stacjonujący we Włoszech garnizon okrywa się złą sławą.
Jednej nocy Wilson gra w karty z włoską arystokratką Giuseppiną. Podczas intensywnej gry Wilson wygrywa i Giuseppina zostaje przez niego wychłostana. Ponownie zjawia się sobowtór Wilsona informujący Giuseppinę o tym, że Wilson oszukiwał. Dowódca oddziału traktuje to jako obrazę munduru i nakazuje Wilsonowi opuścić miasto. Wzburzony Wilson postanawia raz na zawsze rozprawić się z sobowtórem i toczy z nim pojedynek na szpady. Po przegraniu potyczki sobowtór zostaje ugodzony śmiertelnie sztyletem. Przed śmiercią wyznaje, że bez niego Wilson nie istnieje.