Дія роману відбувається в XVI столітті. Батько головного героя - англійський дворянин на прізвище Вингфилд - одружився на іспанській дворянці Луїсі де Гарсіа і відвіз її з собою до Англії проти волі її сім'ї. Через два десятиліття в Англії перебуває Хуан де Гарсіа - кузен і колишній наречений Луїси. Хуан і Луїса зустрічаються в гаю недалеко від маєтку Вінгфілд, Хуан пропонує коханої повернутися з ним в Іспанію, а отримавши відмову, вбиває її. Перед смертю Луїса пророкує, що Хуан де Гарсіа помре від руки її сина.
Трохи пізніше де Гарсіа випадково зустрічає Томаса Вінгфілд, молодшого сина Луїзи, і, згадавши пророкування, вирішує вбити його. Однак Томасу везе - він перемагає іспанця і прив'язує його до дерева. Томас ще не знає, що де Гарсіа вбив його матір, тому спокійно залишає противника і відправляється на побачення зі свій коханої Лілі Бозард. Хуану де Гарсіа вдається звільнитися і втекти. Коли з'ясовуються обставини смерті Луїси, батько Томаса звинувачує сина в тому, що з його вини вбивця матері уникнув відплати. Томас дає батькові клятву, що буде переслідувати де Гарсіа, поки не знайде і не вб'є його. Перед від'їздом до Іспанії Томас прощається з Лілі, і вони дають один одному клятву вірності.
У Севільї Томас надходить на службу до Андрес де Фонсека - фахівця з вирішення різноманітних делікатних проблем, який в курсі всіх таємниць і інтриг міста. Через кілька місяців Томас випадково зустрічається де Гарсіа, проте їх почався поєдинок перериває міська варта, і де Гарсіа знову вдається вислизнути. Томас повертається до свого життя помічника Фонсекі, проте літній іспанець незабаром помирає, заповівши все своє величезне багатство Томасу, до якого встиг прив'язатися. Отримані гроші Томас відправляє в Англію, в розпорядженні Лілі Бозард, а сам, дізнавшись, що де Гарсіа відправився в Америку, пускається в далеке плавання до берегів Нового Світу.
Корабель, на якому він плив, зазнає аварії. Томас і ще кілька вижили дрейфують у відкритому океані в шлюпці, поки їх не підбирає іспанський корабель. За фатальним збігом обставин, одним з офіцерів на іспанському кораблі виявляється Хуан де Гарсіа. За його намовою Томаса замикають в трюмі разом з чорними рабами, а коли на судні починається епідемія лихоманки, викидають за борт. Томасу вдається врятуватися в бочці, яку викинули з корабля як сміття, і дістатися до берега, де його знаходять місцеві індіанці. Спершу вони хочуть принести білої людини (Теуль) в жертву, але племінник короля ацтеків Монтесуми - принц Куаутемок - наполягає на тому, що Теуль потрібно доставити до короля. За час подорожі в Теночтітлан Томас встигає вивчити мову ацтеків і подружитися з принцом Куаутемок. При дворі Монтесуми Томас знайомиться з Отомі - дочкою Монтесуми, принцесою народу отомі і між ними виникають поки що невизначені почуття. За рішенням жерців Томас змушений протягом року зображати втілення бога Тескатліпокі, а після цього його повинні принести в жертву. Отомі (в рамках ритуалу) стає дружиною Томаса, хоча він і зізнається їй, що любить іншу. Тим часом іспанські конкістадори, очолювані Кортесом, просуваються все глибше у володіння ацтеків і осаджують Теночтітлан. Отомі добровільно погоджується розділити долю свого чоловіка і лягає поруч з ним на жертовний камінь, і Томас зізнається їй у коханні. Жертвопринесення в останній момент переривають конкістадори, що захопили теокаллі. Томас бачить серед них Хуана де Гарсіа, іспанець теж дізнається свого ворога, але Томас рятується від нього втечею. Так як повторне жертвоприношення НЕ буде завгодно богам, ацтеки беруть Томаса вже не як Теуль, а як рівного собі.
Кортес бере імператора Монтесуму в полон, а після смерті правителя ацтеків влада переходить до Куаутемок. Втративши свій козир в особі царственого заручника, іспанці залишають Теночтітлан. Куаутемок, Томас і кілька вірних індіанців вивозять з міста скарби Монтесуми і закопують їх у печері, щоб золото не дісталося іспанцям. Незабаром конкістодори повертаються разом з армією ворожого ацтекам індіанського племені тласкаланцев і осаджують Теночтітлан. Індіанці на чолі з Куаутемок обороняють місто так довго, як це можливо, але в кінці кінців змушені здатися на милість переможця. Кортес наказує Хуану де Гарсіа піддати Томаса і Куаутемока тортурам, щоб дізнатися у них, де сховані скарби Монтесуми, однак це не приносить результатів. Индеанках Марина, коханка Кортеса, яку пов'язують з Томасом узи дружби, допомагає йому і Отомі втекти з розореного і зруйнованого іспанцями міста.
Втікачі знаходять притулок в місті сосен. Протягом 20 років Томас править народом отомі разом зі свій дружиною, поки іспанці під командуванням Берналя Діаса не осідають місто. Томас дізнається, що серед іспанців і його ворог Хуан де Гарсіа. Усвідомлюючи, що шляхів до порятунку немає, жінки під керівництвом Отомі здійснюють кривавий ритуал, принісши в жертву Уїцилопочтлі полонених тласкаланцев (бранців-іспанців Томасу вдалося таємно звільнити), і накладають на себе руки (все, крім Отомі). Томас оголошує іспанцям про здачу міста в обмін на збереження життя своєї сім'ї і своїм людям. Хуан де Гарсіа вбиває єдиного, що залишився в живих сина Томаса, після чого старі вороги нарешті зустрічаються для останнього поєдинку на вершині вулкана. Де Гарсіа втрачає розум, бореться з примарами і в кінці кінцем падає в жерло вулкана. Отомі, що не перенісши смерті сина і зміненого ставлення чоловіка (після того як Томас побачив ритуал жертвоприношення, він заборонив Отомі називати його своїм чоловіком), приймає отруту. Перед смертю вона прощається з Томасом і просить його повернутися на батьківщину, до тієї дівчини, яку він любив всі ці роки.
Втративши все, що пов'язувало його з миром індіанців, Томас повертається в Англію. Лілі Бозард, що зберегла вірність своєму коханому, якого вже 20 років всі вважали загиблим, прощає йому зраду і життя з іншою жінкою і погоджується стати його дружиною. Подальше життя Томаса проходить в спокої і поруч з коханою дружиною, хоча спогади про Отомі і їх загиблих дітей продовжують мучити його. Під кінець свого життя, після смерті Лілі, Томас вирішує написати історію свого життя. Закінчення розповіді доводиться на 1588 рік.