В закоулках одной из башен великого собора чья-то давно истлевшая рука начертала по-гречески слово «рок». Затем исчезло и само слово. Но из него родилась книга о цыганке, горбуне и священнике.
6 января 1482 г. по случаю праздника крещения во дворце Правосудия дают мистерию «Праведный суд пречистой девы Марии». С утра собирается громадная толпа. На зрелище должны пожаловать послы из Фландрии и кардинал Бурбонский. Постепенно зрители начинают роптать, а более всех беснуются школяры: среди них выделяется шестнадцатилетний белокурый бесёнок Жеан — брат учёного архидьякона Клода Фролло. Нервный автор мистерии Пьер Гренгуар приказывает начинать. Но несчастному поэту не везет; едва актёры произнесли пролог, появляется кардинал, а затем и послы. Горожане из фламандского города Гента столь колоритны, что парижане глазеют только на них. Всеобщее восхищение вызывает чулочник мэтр Копиноль, который не чинясь, по-дружески беседует с отвратительным нищим Клопеном Труйльфу. К ужасу Гренгуара, проклятый фламандец честит последними словами его мистерию и предлагает заняться куда более веселым делом — избрать шутовского папу. Им станет тот, кто скорчит самую жуткую гримасу. Претенденты на этот высокий титул высовывают физиономию из окна часовни. Победителем становится Квазимодо, звонарь Собора Парижской Богоматери, которому и гримасничать не нужно, настолько он уродлив. Чудовищного горбуна обряжают в нелепую мантию и уносят на плечах, чтобы пройти согласно обычаю по улицам города. Гренгуар уже надеется на продолжение злополучной пьесы, но тут кто-то кричит, что на площади танцует Эсмеральда — и всех оставшихся зрителей как ветром сдувает. Гренгуар в тоске бредет на Гревскую площадь, чтобы посмотреть на эту Эсмеральду, и глазам его предстает невыразимо прелестная девушка — не то фея, не то ангел, оказавшийся, впрочем, цыганкой. Гренгуар, как и все зрители, совершенно зачарован плясуньей, однако в толпе выделяется мрачное лицо ещё не старого, но уже облысевшего мужчины: он злобно обвиняет девушку в колдовстве — ведь её белая козочка шесть раз бьет копытцем по бубну в ответ на вопрос, какое сегодня число. Когда же Эсмеральда начинает петь, слышится полный исступленной ненависти женский голос — затворница Роландовой башни проклинает цыганское отродье. В это мгновение на Гревскую площадь входит процессия, в центре которой красуется Квазимодо. К нему бросается лысый человек, напугавший цыганку, и Гренгуар узнает своего учителя герметики — отца Клода Фролло. Тот срывает с горбуна тиару, рвет в клочья мантию, ломает посох — страшный Квазимодо падает перед ним на колени. Богатый на зрелища день подходит к концу, и Гренгуар без особых надежд бредет за цыганкой. Внезапно до него доносится пронзительный крик: двое мужчин пытаются зажать рот Эсмеральде. Пьер зовет стражу, и появляется ослепительный офицер — начальник королевских стрелков. Одного из похитителей хватают — это Квазимодо. Цыганка не сводит восторженных глаз со своего спасителя — капитана Феба де Шатопера.
Судьба заносит злосчастного поэта во Двор чудес — царство нищих и воров. Чужака хватают и ведут к Алтынному королю, в котором Пьер, к своему удивлению, узнает Клопена Труйльфу. Здешние нравы суровы: нужно вытащить кошелёк у чучела с бубенчиками, да так, чтобы они не зазвенели — неудачника ждет петля. Гренгуара, устроившего настоящий трезвон, волокут на виселицу, и спасти его может только женщина — если найдется такая, что захочет взять в мужья. Никто не позарился на поэта, и качаться бы ему на перекладине, если бы Эсмеральда не освободила его по доброте душевной. Осмелевший Гренгуар пытается предъявить супружеские права, однако у хрупкой певуньи имеется на сей случай небольшой кинжал — на глазах изумленного Пьера стрекоза превращается в осу. Злополучный поэт ложится на тощую подстилку, ибо идти ему некуда.
На следующий день похититель Эсмеральды предстает перед судом. В 1482 г. омерзительному горбуну было двадцать лет, а его благодетелю Клоду Фролло — тридцать шесть. Шестнадцать лет назад на паперть собора положили маленького уродца, и лишь один человек сжалился над ним. Потеряв родителей во время страшной чумы, Клод остался с грудным Жеаном на руках и полюбил его страстной, преданной любовью. Возможно, мысль о брате и заставила его подобрать сироту, которого он назвал Квазимодо. Клод выкормил его, научил писать и читать, приставил к колоколам, поэтому Квазимодо, ненавидевший всех людей, был по-собачьи предан архидьякону. Быть может, больше он любил только Собор — свой дом, свою родину, свою вселенную. Вот почему он беспрекословно выполнил приказ своего спасителя — и теперь ему предстояло держать за это ответ. Глухой Квазимодо попадает к глухому судье, и это кончается плачевно — его приговаривают к плетям и позорному столбу. Горбун не понимает, что происходит, пока его не начинают пороть под улюлюканье толпы. На этом муки не кончаются: после бичевания добрые горожане забрасывают его камнями и насмешками. Он хрипло просит пить, но ему отвечают взрывами хохота. Внезапно на площади появляется Эсмеральда. Увидев виновницу своих несчастий, Квазимодо готов испепелить её взглядом, а она бесстрашно поднимается по лестнице и подносит к его губам флягу с водой. Тогда по безобразной физиономии скатывается слеза — переменчивая толпа рукоплещет «величественному зрелищу красоты, юности и невинности, пришедшим на помощь воплощению уродства и злобы». Только затворница Роландовой башни, едва заметив Эсмеральду, разражается проклятиями.
Через несколько недель, в начале марта, капитан Феб де Шатопер любезничает со своей невестой Флер-де-Лис и её подружками. Забавы ради девушки решают пригласить в дом хорошенькую цыганочку, которая пляшет на Соборной площади. Они быстро раскаиваются в своем намерении, ибо Эсмеральда затмевает их всех изяществом и красотой. Сама же она неотрывно глядит на капитана, напыжившегося от самодовольства. Когда козочка складывает из букв слово «Феб» — видимо, хорошо ей знакомое, Флер-де-Лис падает в обморок, и Эсмеральду немедленно изгоняют. Она же притягивает взоры: из одного окна собора на нее с восхищением смотрит Квазимодо, из другого — угрюмо созерцает Клод Фролло. Рядом с цыганкой он углядел мужчину в желто-красном трико — раньше она всегда выступала одна. Спустившись вниз, архидьякон узнает своего ученика Пьера Гренгуара, исчезнувшего два месяца назад. Клод жадно расспрашивает об Эсмеральде: поэт говорит, что эта девушка — очаровательное и безобидное существо, подлинное дитя природы. Она хранит целомудрие, потому что хочет найти родителей посредством амулета — а тот якобы помогает лишь девственницам. Её все любят за веселый нрав и доброту. Сама она считает, что во всем городе у нее только два врага — затворница Роландовой башни, которая почему-то ненавидит цыган, и какой-то священник, постоянно её преследующий. При помощи бубна Эсмеральда обучает свою козочку фокусам, и в них нет никакого колдовства — понадобилось всего два месяца, чтобы научить её складывать слово «Феб». Архидьякон приходит в крайнее волнение — и в тот же день слышит, как его брат Жеан дружески окликает капитана королевских стрелков по имени. Он следует за молодыми повесами в кабак. Феб напивается чуть меньше школяра, поскольку у него назначено свидание с Эсмеральдой. Девушка влюблена настолько, что готова пожертвовать даже амулетом — раз у нее есть Феб, зачем ей отец и мать? Капитан начинает целовать цыганку, и в этот момент она видит занесенный над ним кинжал. Перед Эсмеральдой возникает лицо ненавистного священника: она теряет сознание — очнувшись, слышит со всех сторон, что колдунья заколола капитана.
Проходит месяц. Гренгуар и Двор чудес пребывают в страшной тревоге — исчезла Эсмеральда. Однажды Пьер видит толпу у Дворца правосудия — ему говорят, что судят дьяволицу, которая убила военного. Цыганка упорно все отрицает, невзирая на улики — бесовскую козу и демона в сутане священника, которого видели многие свидетели. Но пытки испанским сапогом она не выдерживает — признается в колдовстве, проституции и убийстве Феба де Шатопера. По совокупности этих преступлений её приговаривают к покаянию у портала Собора Парижской Богоматери, а затем к повешению. Той же казни должна быть подвергнута и коза. Клод Фролло приходит в каземат, где Эсмеральда с нетерпением ждет смерти. Он на коленях умоляет её бежать с ним: она перевернула его жизнь, до встречи с ней он был счастлив — невинный и чистый, жил одной лишь наукой и пал, узрев дивную красоту, не созданную для глаз человека. Эсмеральда отвергает и любовь ненавистного попа, и предложенное им спасение. В ответ он злобно кричит, что Феб умер. Однако Феб выжил, и в сердце его вновь поселилась светлокудрая Флер-де-Лис. В день казни влюбленные нежно воркуют, с любопытством поглядывая в окно — ревнивая невеста первой узнает Эсмеральду. Цыганка же, увидев прекрасного Феба, падает без чувств: в этот момент её подхватывает на руки Квазимодо и мчится в Собор с криком «убежище». Толпа приветствует горбуна восторженными воплями — этот рев доносится до Гревской площади и Роландовой башни, где затворница не сводит с виселицы глаз. Жертва ускользнула, укрывшись в церкви.
Эсмеральда живет в Соборе, но не может привыкнуть к ужасному горбуну. Не желая раздражать её своим уродством, глухой дает ей свисток — этот звук он способен расслышать. И когда на цыганку набрасывается архидьякон, Квазимодо в темноте едва не убивает его — только луч месяца спасает Клода, который начинает ревновать Эсмеральду к уродливому звонарю. По его наущению, Гренгуар поднимает Двор чудес — нищие и воры штурмуют Собор, желая спасти цыганку. Квазимодо отчаянно обороняет свое сокровище — от его руки гибнет юный Жеан Фролло. Между тем Гренгуар’тайком выводит Эсмеральду из Собора и невольно передает в руки Клода — тот увлекает её на Гревскую площадь, где в последний раз предлагает свою любовь. Спасения нет: сам король, узнав о бунте, распорядился найти и повесить колдунью. Цыганка в ужасе отшатывается от Клода, и тогда он тащит её к Роландовой башне — затворница, высунув руку из-за решетки, крепко хватает несчастную девушку, а священник бежит за стражей. Эсмеральда умоляет отпустить её, но Пакетта Шантфлери только злобно смеется в ответ — цыгане украли у нее дочь, пусть теперь умрет и их отродье. Она показывает девушке вышитый башмачок своей дочурки — в ладанке у Эсмеральды точно такой же. Затворница едва не теряет рассудок от радости — она обрела свое дитя, хотя уже лишилась всякой надежды. Слишком поздно мать и дочь вспоминают об опасности: Пакетта пытается спрятать Эсмеральду в своей келье, но тщетно — девушку тащат на виселицу, В последнем отчаянном порыве мать впивается зубами в руку палача — её отшвыривают, и она падает замертво. С высоты Собора архидьякон смотрит на Гревскую площадь. Квазимодо, уже заподозривший Клода в похищении Эсмеральды, крадется за ним и узнает цыганку — на шею ей надевают петлю. Когда палач прыгает девушке на плечи, и тело казненной начинает биться в страшных судорогах, лицо священника искажается от смеха — Квазимодо его не слышит, но зато видит сатанинский оскал, в котором нет уже ничего человеческого. И он сталкивает Клода в бездну. Эсмеральда на виселице, и архидьякон, распростершийся у подножия башни, — это все, что любил бедный горбун.