Благочестивый человек оказался в заточении среди нечестивцев и увидел видение: на поле, спиной к своему дому в городе Гибель, стоял человек под тяжестью грехов, держа в руках Книгу. Из неё он, Христианин, узнал, что город будет уничтожен небесным огнём, а его жители погибнут, если не отправятся немедленно в путь, ведущий от смерти к вечной жизни. Он не знал, где найти этот путь.

Родные посчитали его безумцем, а соседи насмехались, когда он покинул город, не зная точного направления. На открытом поле ему встретился Евангелист, который указал путь к Тесным вратам и велел идти прямо, не сворачивая.

Двое соседей, Упрямый и Сговорчивый, последовали за ним, но Упрямый вскоре отказался продолжать, не получив ясных ответов о «наследстве нетленном и непорочном», ожидающем за вратами. Сговорчивый также покинул Христианина, увидев, как тот забрел в топь уныния — место, куда стекают сомнение и страх, связанные с грехом. Обойти или преодолеть эту топь было невозможно.

За топью Христианина встретил Мирской Мудрец, предложивший более легкий способ избавиться от грехов — свернуть в селение Благонравие и обратиться к человеку по имени Законность. Христианин сначала послушался, но Евангелист остановил его на опасном пути и направил обратно к Тесным вратам, куда вскоре Христианин прибыл.

Он прочитал надпись «Стучите, и отворят вам» и постучался с волнением. Привратник впустил его, подтолкнув вперед, ведь неподалёку стоял замок Вельзевула, откуда исходили смертоносные стрелы для препятствующих пройти через ворота. Привратник указал множество путей внутри, но лишь один — узкий и прямой, ведущий по следам патриархов, пророков, Христа и апостолов — был истинным. Христианин продолжил движение по нему.

Вскоре он достиг дома, где всё — комнаты и предметы — символизировало важнейшие истины, необходимые для преодоления препятствий на пути. Хозяин дома, Толкователь, разъяснил значение символов. Поблагодарив его, Христианин продолжил путь и вскоре увидел холм с Крестом. Поднявшись, он сбросил бремя грехов в могилу у подножия.

Там три ангела сняли с него дорожное одеяние, облачив в праздничные одежды, вручили ключ Обетования и свиток с печатью, служащие пропуском в Небесный Град, и наставили на дальнейший путь. По дороге Христианин встретил других пилигримов, преимущественно недостойных выбранной стези. Формалист и Лицемер из страны Тщеславия избегали Тесных врат, предпочитая кратчайший путь к Сиону ради славы. На горе Затруднение они выбрали обходные, но опасные дороги — Опасность и Погибель — и пропали.

Робкий и Недоверчивый, встретив опасности, испугались и повернули назад. У входа в чертог Великолепие Христианин встретил двух львов, охранявших тропу. Несмотря на страх, он, подбадриваемый привратником, смело прошёл между ними.

В чертоге его тепло приняли и провели долгую беседу с девами Мудростью, Благочестием и Милосердием о величии создателя чертога. Наутро они снабдили Христианина бронёй и оружием, необходимыми для дальнейшего пути. Без них ему не удалось бы пройти через долину Унижения, где он встретил Аполлиона — страшного ангела бездны и врага Царя, которому служил Христианин. Пилигрим одержал победу в поединке, произнося имя Господа.

Далее путь пролегал через долину Смертной Тени, где он шел по узкой тропе между трясиной и бездонной пропастью, избегая входа в ад. Он миновал вертепы великанов Язычества и Папства, которые в прежние времена губили многих путников.

За долиной Христианин встретил Верного, который также прошёл Тесные врата и выдержал испытания. Они объединили усилия и шли вместе, пока не увидели город Суета. Евангелист предупредил, что один из них здесь примет мученическую смерть, что принесёт ему преждевременный вход в Небесный Град и избавит от скорбей оставшегося.

В городе постоянно проходила ярмарка с разнообразием товаров — домов, титулов, страстей и удовольствий, сопровождаемых преступлениями и пороками, освещённых зловещим багровым светом. Пилигримы отвергли предложения, заявив, что ищут лишь истину. За это их обвинили в нарушении порядка, и на суде против них свидетельствовали Зависть, Суеверие и Угодничество.

Верный был казнён, а Христианин бежал, вскоре встретив Уповающего, который, потрясённый смертью Верного, присоединился к нему. Они свернули на удобную тропу, что чуть не погубило их, приведя к замку Сомнения, владению великана Отчаяния. Он пленил их и пытался склонить к самоубийству, но Уповающий напомнил заповедь «Не убий», и Христианин, воспользовавшись ключом Обетования, освободил их от уз.

Пилигримы достигли Отрадных гор, откуда смутно были видны ворота Небесного Града. Пастухи Познание, Опытный, Бдительность и Искренний подробно описали им путь. Они последовали за чернокожим человеком в сияющей одежде, обещавшим проводить к городу, но оказались в сетях Лжеапостола. Ангел Божий освободил их и разъяснил опасность.

Далее Христианин и Уповающий прошли через чудесную страну Сочетания, описанную пророком Исаией и названную Господом Своей. Воздух здесь был наполнен дивными ароматами и пением птиц. Небесный Град становился всё яснее. Они подошли к реке, которую следовало перейти, поскольку лишь Енох и Илия миновали её, не вступая в воду.

Войдя в реку, Христианин начал тонуть и взывал к Богу, но Христос не оставил верных и они благополучно достигли противоположного берега. У ворот Небесного Града их встретили ангельские воинства, и небесный хор запел песнь: «Блаженны званные на брачную вечерю Агнца». Пилигримы вошли в город и преобразились, облечённые в сверкающие одежды. Ангелы воспели: «Свят, свят, свят Господь Саваоф!»

Благочестивому человеку было явлено другое видение, раскрывающее судьбу Христианы, которая некогда отказалась последовать за мужем. После его перехода через реку Смерти она осознала свою вину, ведь помешала и себе, и детям вступить в жизнь вечную.

Во сне она видела Христианина, играющего на лире пред Господом. Наутро к ней пришёл гость по имени Тайна с приглашением от Хозяина Небесного Града. Соседи осмеяли её, но лишь одна, по имени Любовь, согласилась сопровождать её.

За Тесными вратами Христиану с детьми и Любовью встретил Сам Господь, указав путь, по которому Он сам прошёл. На этом пути им предстояли серьёзные испытания, и Толкователь послал им своего слугу, Духа Мужества, который не раз защищал их от великанов и чудовищ, губивших пилигримов, идущих не по истинному пути.

Везде, где проходила Христиана с спутниками, она слышала рассказы о подвигах мужа и Верного. За время пути сыновья Христианы заключили браки с дочерьми благочестивых людей и имели детей. Младенцев, внуков пилигримы доверили на воспитание Пастырю, пасшему стада на Отрадных горах, а сами спустились в страну Сочетания, где пребывали до прихода ангела с вестью о том, что Царь ожидает её через десять дней.

В назначенное время Христиана с радостью вступила в реку, где её уже ждала колесница, чтобы отвезти в Небесный Град.