Главный герой книги, Артём (молодой человек возрастом 24 года), живёт на станции "ВДНХ", страдающей от нашествия так называемых "чёрных" (людей-мутантов), идущих со стороны "Ботанического Сада". На их станцию приходит загадочный человек — Хантер, который берётся разобраться с этой ситуацией. В личном разговоре Артём рассказывает ему, как лет в 10 он с друзьями случайно открыл гермозатвор, отделяющий станцию "Ботанический сад" от эскалаторов, ведущих на поверхность. Перед походом к станции Хантер берёт с него обещание добраться до Полиса, разыскать там некого Мельника и передать тому запаянную гильзу с посланием, если сам он не вернётся через двое суток.
Спустя сутки после того, как Хантер должен был вернуться, друг Артёма, Женька, сообщает ему, что он в составе группы собирается на "Рижскую", так как решается вопрос об объединении этой станции с "ВДНХ", а также для прокладки телефонного кабеля до этой станции. Артём присоединяется к нему. На перегоне между "Алексеевской" и "Рижской" с участниками экспедиции начинают происходить странные вещи — некоторые теряют сознание, другие впадают в ступор. При этом в отличие от остальных Артём слышит оглушающий шум из труб. Группа с трудом выбирается из опасного участка тоннеля и наконец добирается до "Рижской". Там к нему подходит некто Бурбон — челнок, который просит Артёма провести его до "Сухаревской", утверждая, что туннель от "Проспекта Мира" до "Сухаревской" "нехороший" и полагаясь на необычную "устойчивость" Артёма.
Артём доходит до "Проспекта Мира" вместе с Бурбоном.
По пути от Проспекта Мира Бурбон гибнет загадочной смертью. Артёма, который решил тащить тело Бурбона до станции, подбирает некто Хан. С "Сухаревской" Хан с Артёмом вместе с несколькими другими людьми идут в сторону "Китай-города". На "Тургеневской" Хан чувствует, что в туннеле впереди опасность, и советует идти по параллельному тоннелю, но большая часть отряда, не поверив ему, уходит дальше и погибает. До "Китай-города" доходят, едва успев уйти от движущейся за ними аномалии в тоннеле, лишь наши двое и Туз, член того отряда. На "Китай-городе" Артём теряет из виду своих спутников из-за нападения, в результате которого он вынужден бежать в сторону "Кузнецкого моста". По пути он знакомится с Михаилом Порфирьевичем и его внуком Ванечкой, страдающим аутизмом. Переночевать на "Кузнецком мосту" им не удаётся, Михаил Порфирьевич в беседе с Артёмом проговорился и за ним охотятся красные. Троица бежит в сторону "Тверской", которую захватили фашисты. Артёма и Михаила охрана пропускает, а Ванечку убивает офицер. Артём не может этого стерпеть, нападает на офицера и убивает его.
Артёма хватают и приговаривают к смертной казни через повешение, но в самый последний момент его спасает отряд троцкистов. Они высаживают его на "Павелецкой" и уезжают. Тут Артём понимает, что остался без документов, а из вещей у него только автомат и фонарь. Он знакомится с Марком, который предлагает способ попасть на территорию Ганзы — в переходе начальник "Павелецкой-кольцевой" устраивает крысиные бега. Марк договаривается с ним, что если его крыса выиграет, то они с Артёмом получают визы, в противном случае год чистят туалеты. Их крыса благополучно проигрывает. Обоих хватают и ведут на место работы. На пятый день работы Артём сбегает и попадает на "Серпуховскую", где его подбирает Тимофей, свидетель Иеговы. Он отводит его в "Сторожевую Башню" — поезд в перегоне "Серпуховская" — "Тульская". Затем Артём уходит оттуда и приходит на заброшенную станцию "Полянка", где встречает двоих путников. После разговора Артём преодолевает последний перегон, отделяющий его от Полиса.
В Полисе он спрашивает Мельника, ему отвечают, что Мельник будет завтра утром. Артём, прогулявшись по Полису, знакомится с Данилой — брамином (хранителем). Он ему рассказывает про некую книгу, в которой, по слухам, записано будущее и хранится она в библиотеке им. Ленина. Утром на станцию приходит человек, в котором Артём признает сталкера (он именно так их себе и представлял), человек окликает Артёма и спрашивает: "Ты с „ВДНХ“?", и представляется: "Мельник". Артём отдаёт ему послание от Хантера. Совет, собранный по заявлению Артёма, выносит вердикт — Полис в беде и не может помочь "ВДНХ". После этого к нему подходит брамин и просит проследовать за ним, на собрание. Брамины предлагают Артёму подняться в библиотеку за книгой. За это они, мол, ему откроют способ решить ситуацию с "ВДНХ". Артём соглашается и узнаёт, что вести группу будет Мельник, а человеком от браминов будет Данила. Поднявшись в библиотеку, отряд сталкивается с библиотекарями — странными существами-мутантами, живущими в библиотеке. Артём с Данилой отделяются от группы и идут в книгохранилище, где Артём безуспешно пытается найти книгу (брамины сказали ему, что книга сама его позовёт).
Отойдя всего на 30 метров, Артём оборачивается и не видит Данилу, который остановился завязать шнурок. Артём бросается его искать, и находит при смерти, а рядом с Данилой — убивший его библиотекарь (позже выяснилось, что Данила не мог обороняться из-за заклинившего затвора автомата). Данила из последних сил говорит, что во внутреннем кармане у него конверт с наградой Артёму и просит Артёма убить его, дабы прекратить его мучения. Поколебавшись, Артём исполняет последнее желание Данилы, и убивает брамина и библиотекаря. Вернувшись к Мельнику и его команде, он узнаёт, что один из отряда сильно ранен и они спешно удаляются из библиотеки. Подойдя к метро, Мельник говорит Артёму, что дороги в Полис ему больше нет, так как книгу он не нашёл, и предлагает ему пройти до "Смоленской". Артём выдвигается по Новому Арбату, но замечает слежку неких существ. Пройдя немного, существа решаются на атаку, и Артём, спасаясь, забегает в дом. В квартире он находит фотографию, на которой, предположительно, изображены он и его покойная мать. Он забирает её с собой. Выждав немного, он продолжает путь и с большим трудом доходит до "Смоленской". Там его встречает Мельник. Артём передаёт ему конверт от Данилы, в котором находится схема расположения уцелевшей военной базы. На "Смоленской" ночевать опасно, и путники переходят на "Киевскую", где встречают местного жителя Антона, который, как потом выяснится, раньше, ещё "до", был ракетчиком. Там же они встречают и Третьяка, ракетчика, и Мельник собирается с ним в путь "разведать обстановку" на "Маяковскую" (где, согласно схеме, предположительно имеется выход в Метро-2 (Д-6)). Артём вместе с Антоном идут в дозор, хотя оба туннеля до "Парка Победы" взорваны, но "людям так спокойнее". Артём идёт на ужин к начальнику станции, который признаётся ему, что на станции периодически пропадают дети. На следующее утро Артём узнаёт, что пропал сын Антона, Олег, и отправляется в туннели, где находит люк, ведущий в лаз, располагающийся по верху туннеля и ведущий через завал. Вместе с Антоном они идут на "Парк Победы", но подвергаются нападению местных жителей — дикарей. Они исповедуют культ Великого Червя. От съедения парочку спасает отряд, возглавляемый тем же Мельником. Тут же находится Олег. Отряд отходит в другую сторону, и тут выясняется, что с "Парка Победы" тоже имеется выход в Д-6 через тоннель Солнцевской линии.
Проникнув в Метро-2 и миновав несколько станций, они выходят на станцию, судя по всему, находящуюся под Кремлём. Тут же выясняется, что на станции живёт некое существо, имеющее аморфное тело и умеющее применять психологическую атаку — предположительно, мутировавшее биологическое оружие. Так гибнут Олег и два члена отряда — Делягин и Оганисян. Тут же приходит в себя Антон, до этого находившийся в беспамятстве. С трудом группа заставляет существо отступить и уходит прочь со станции. Добравшись до заваленного выхода из Д-6 к "Маяковской", Мельник говорит, что Артёму с ними идти нельзя (должен же кто-то координировать удар ракет и, к тому же, он единственный знает, как выглядят чёрные) и приставляет к нему Ульмана, бойца из отряда. Оба благополучно выбираются через служебный люк в тоннель Д-6, ведущий к перегону между "Маяковской" и "Тверской", и путешествуют до "Проспекта Мира", так как у Ульмана там назначена встреча. Группа должна попасть на Останкинскую башню, чтобы оттуда координировать ракетный залп. Артём узнаёт, что выходы с "ВДНХ" скоро будут взорваны, так как сдерживать атаку чёрных больше нет сил. Он отпрашивается у Ульмана сходить на "ВДНХ". Придя туда, он встречает своего отчима, узнаёт, что Женька убит, и получает записку от Хана. Затем Артём опять идёт наверх. Там он замечает огромного летающего монстра, свившего гнездо прямо в вестибюле станции "ВДНХ", и запирается в ларьке, пункте обмена валюты. Там он видит труп девушки и читает её последние записи. Ульман с товарищем подъезжают к станции на бывшей пожарной машине и подбирают Артёма. Машина достигает башни, и группа поднимается наверх. Оттуда видно гнездо чёрных, и Ульман говорит координаты. Тут у Артёма начинаются видения, он узнаёт, что чёрные не собирались враждовать, что они пытались наладить контакт с людьми. И когда он стоит на пороге контакта, ракеты достигают цели. Поняв всё, он срывает с лица противогаз и идёт в метро... Впрочем, возможно, чёрные пытались телепатически внушить ему эту мысль в надежде отвести удар.