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