Действие развивается в двух временных пластах.
Часть 1
1-2
Советский Союз, конец 1980-х годов. Рабочий завода 41-летний Павел Кирша (Пашута) чувствует настойчивое желание изменить свою устоявшуюся жизнь. Заводские друзья знают, что Павла, упрямого и целеустремлённого, с ненасытной душой, бесполезно уговаривать остаться.
Пашута покидает сожительницу Вильямину, увольняется с завода и едет в Ригу, где знакомится с девятнадцатилетней Варей. Девушка, по определению Павла, «независимая, глядящая без робости, смеющаяся дерзко».
Охота
Далёкое прошлое. Племя древних лесных людей живёт в лесных землянках и поклоняется Сварогу. Семнадцатилетний охотник Улен привязан к мудрому старику Колоду. Тот сделал парня отличным охотником, передав ему как сыну своё умение. Оба не верят колдуну племени, подозревая того в обмане соплеменников. Охотничий пёс старика Анар не любит парня и не хочет ему подчиняться.
Улен влюблён в гордую, независимую четырнадцатилетнюю Млаву, которая кокетничает с ним. Вождь племени, коварный и жестокий Богол, тоже заглядывается на девушку, и юноша опасается, что её отец отдаст дочь вождю. На удачной охоте юноша и старик убивают медведя, который ранит Колода.
3
Пашута живёт на латвийском хуторе, помогает в делах хозяину-латышу Раймуну и приударяет за его племянницей Лилиан. По просьбе хозяина, Пашута едет в Ленинград продавать сало на рынке и там случайно встречает Варю, рижскую знакомую.
Поняв, что это знак свыше, герой дарит ей сало и провожает. Девушка намекает, что ему не следует встречаться с её знакомыми, непростыми людьми, но очарованный Пашута смело идёт в её компанию. Немолодые мужчины криминального вида грязно отзываются о Варе, намекают на свои тайные делишки и ранят героя.
Ссора
Прошлое. Улен выхаживает Колода и сближается с Млавой. Молодые договариваются быть вместе, и герой сообщает об этом вождю Боголу. Тот решает отомстить парню и силой взять девушку. Улен приручает пса Анара. Старик поддерживает самостоятельность парня, видя в нём горячее, беспокойное сердце и неутолимую жажду жизни.
4
Пашуту и Варю преступники выбрасывают на улицу. Девушка остаётся с Павлом. Они весело торгуют на рынке и с помощью Вариного обаяния сбывают весь товар.
История Вари
Варя выросла в интеллигентной семье с беспомощным в житейских делах отцом и психопаткой-матерью. Семейный конфликт родителей сделал её жадной до жизни, энергичной, любопытной и смелой.
Варя тянулась к сильным, самодостаточным мужчинам, стала любовницей подпольного воротилы, который втянул её в криминал. Работая на него курьером, она познакомилась в Риге с Пашутой.
Павел всё больше влюбляется в Варю, несмотря на её исповедь. Он понимает, что они похожи неуемной жаждой жизни, желанием достичь невозможного. Он решает вывести девушку из шайки мошенников. Они с Варей проникают в криминальную квартиру, выкрадывают документы и, допросив одного из бандитов, понимают, что банда занимается экономическими преступлениями.
Побег
Прошлое. Улен и Млава сбегают из племени от гнева Богола, пожелавшего девушку. Умирающий Колод даёт последние советы юноше, поддерживая его в стремлении жить по-своему, а не по указке несправедливого вождя. Старик приказывает Анару служить Улену. Герои убивают слугу Богола, направленного по их следу.
Часть 2
1
Пашута и Варя скрываются в Ростовской области у армейского приятеля Спирина и его жены Урсулы. Тот поселяет их в пустом доме донской малолюдной деревни Глухое Поле. Герои ведут совместное хозяйство, но их отношения не супружеские, а платонические. Павел опасается разрушить хрупкое согласие между ними, оберегает страдающую душу девушки.
Поначалу им всё нравится. Пашута понимает, что только сейчас, рядом с любимой девушкой, он начал по-настоящему жить. С Варей непросто: она независима, не терпит скуки, нравоучений, не приучена к труду, но старательно пытается приспособиться к новой жизни.
2
Новые поселенцы знакомятся с местным старожилом, дедом Тихоном, которому более 100 лет. Сельский философ убеждён, что самое важное в человеке — наличие исторической памяти о своём роде, предках. Помнящий своё родство станет успешен во всех начинаниях. Тихон рассказывает, что ночами к нему приходят призраки прошлого и делятся с ним своими тайнами. Один из призраков — очень похожий на Пашуту юный воин Улен.
Знакомятся приезжие и с местным главой администрации Хабило, демагогом и лжецом. Чиновник не умеет работать, зато вредит сельчанам глупыми распоряжениями. Варя очаровывает Хабило и уговаривает взять их с Пашутой на работу, чтобы получать зарплату.
У реки
Прошлое. Улен с Млавой всё дальше уходят от родного племени. Наконец они выходят к большой заледеневшей реке. Утопающую Млаву спасает маленький человек Зем. Он рассказывает, что недалеко, не в землянках, а в деревянных домах, живёт племя россичей.
3
Пашута со Спириным подготавливают пасеку к лету, а Варя работает художником-оформителем. Внезапно к герою приезжают гости: заводской друг Шпунтов и бывшая любовница Вильямина, пытающаяся вернуть любовь Пашуты. Шпунтов пытается ухаживать за брошенной женщиной с нелёгкой судьбой. Спирин определяет их в пустующий дом.
4
Варя рисует плакаты по заказу Хабило. Она размышляет о своих отношениях с Павлом и приходит к выводу, что начинает влюбляться в него. Павел откровенно говорит со Шпунтовым о Вильямине, предлагает подождать, пока она его разлюбит. Он мечтает возродить умирающее село вместе со Спириным и Варей.
В плену
Прошлое. Ночью Улена и Млаву берут в плен воины-россичи. Девушку похищает жестокий Брег и насилует. Улена допрашивает вождь Невзор, признаёт его безопасным и отпускает. Пока парень идёт к Брегу за Млавой, он разглядывает большой город россичей, огороженный стеной из частокола. Насильник смеётся над юношей, не желая отдавать понравившуюся ему пленницу, и Улен убивает его.
5-6
Павел всё ещё стесняется девушки, её язвительности и насмешек. Все попытки как-то выяснить отношения ни к чему не приводят. Герои мучают друг друга неопределённостью, боясь признаться в своих чувствах, обмануться и обмануть. Так же мучается неразрешимым вопросом Шпунтов: остаться с Вильяминой здесь или уехать одному в Москву.
Навестить Павла приезжают латвийские знакомые Раймун и Лилиан, которая все ещё симпатизирует герою.
Суд и приговор
Прошлое. Россичи судят Улена за убийство насильника Брега. Вождь Невзор благоволит ему за чистоту помыслов и воинские умения. Выступая перед горожанами, тот напоминает, что у них есть враги на юге, коварные узкоглазые степняки, а этот смелый парень-убийца — их дальний родич и единоверец. Вождь предлагает оставить Улена в городе, чтобы он занял место убитого им воина. Юношу оставляют в живых, к нему возвращается пес Анар.
7
Председатель Хабило влюбляется в Варю и начинает волочиться за ней. Девушка пытается разобраться в своих чувствах к Павлу: иногда ей кажется, что она только уважает его, а иногда — что любит. Герой видится ей слишком простым, открытым, а она мечтает о загадочном мужчине. Она не против близких отношений с ним, но сама не инициирует близость. Павел сомневается в своём решении поднимать умирающую деревню, но Спирин воодушевляет его.
8
Все жители, включая приезжих, сажают картошку. Происходит множество юмористических моментов между влюблёнными в Павла Варей, Вильяминой и Лилиан. Дед Тихон выясняет у Раймуна, что того также навещают призраки-гости из прошлого. Таким образом, по мнению деда, осуществляется связь времён.
Приезжает Хабило, чтобы забрать Варю в город для работы художницей. Девушка от ревности и обиды на нерешительность Павла, никак не проявляющего любви к ней, уезжает с Хабило прямо с поля.
Чужой в городе
Прошлое. Улен и Млава поселяются в доме убитого Брега. В их отношения закрадывается сомнение, потому что девушка беременна от насильника.
Невзор призывает Улена и приказывает ему вместе с опытным Азолом стать лазутчиком в чужих враждебных землях и принести оттуда информацию о потенциальных врагах. Ему придётся надолго покинуть Млаву. Невзор чувствует удачливость пришельца, и юноша соглашается. Несколько месяцев его обучают как разведчика, он счастлив с женой. Уезжая на неопределённое время почти без шансов вернуться, он оставляет беременную Млаву на попечение вождя.
9
Павел страдает без Вари, жалея, что не удержал её. К нему приходят попрощаться латыши и Шпунтов, они уезжают. Безразличный ко всему, герой не провожает их. Утешает его одна Урсула, понимающая и его, и Варю. Она предрекает, что девушка вернётся к Павлу, но не скоро.
Повинуясь некоему смутному зову, Павел идёт в лес и там встречает деда Тихона. Тот уверяет героя, что и с ним также пытаются связаться души древних людей. Это их голос он услышал, когда пошёл в лес. Прощаясь, Тихон намекает, что может вызвать образы людей и организовать спиритический сеанс, и отдаёт Павлу тетрадь, которую ему передали навещавшие его духи.
Придя домой, Павел засыпает и ему снится страшный мистический сон. Вернувшаяся к нему Варя постарела, подурнела, сама желает его, но, приглядевшись, он замечает, что под обличьем любимой скрывается совсем другая женщина, и он обречён быть с ней.
10
Хабило привозит Варю к себе домой, и девушка успешно водит его за нос, обещая приятные наслаждения, но уворачиваясь от них. Она обдумывает создавшееся положение, чувствует, что скучает по Павлу и ругает себя за то, что обидела его. Она проклинает свою глупую неуместную гордость, помешавшую ей отдаться своей привязанности. Она уходит от Хабило и возвращается в Москву.
Возвращение
Прошлое. Улен скитался по миру около 10 лет. Он видел много стран, общался со многими людьми, убивал врагов, был рабом, жил с женщинами, научился писать. Ему казалось, что он разлюбил далёкую Млаву.
Почувствовав зов крови, Улен возвращается в город россичей. Его встречают сожжённые руины и старый пёс Анар.
Часть 3
1
Павел возвращается в Москву и долго, но безуспешно разыскивает Варю. Он устраивается дворником в районе предполагаемого места жительства девушки, чтоб продолжать её поиски. Его навещают Шпунтов с Вильяминой, они помолвлены. Женщина всё ещё любит Павла и хочет узнать, почему он её так и не полюбил, а коварную обманщицу Варю — полюбил навечно. Павел начинает болеть и стареть, предчувствует, что с ним скоро случится что-то плохое.
2
В дворниках герой знакомится со студентами-ассенизаторами Гришей и Гошей, весёлыми и душевными ребятами, с местным пьяницей, интеллигентными старушками-сёстрами и, наконец, с Вариным отцом. Не рассказывая ему свою историю, герой сближается с ним и узнаёт его адрес и сложные семейные обстоятельства
В новый путь
Прошлое. В лесу Улен обнаруживает трёх оставшихся в живых россичей: Невзора, старуху и мальчика Прона — сына Млавы. Всех остальных убили степняки, а Млаву увели в плен. Постаревший вождь рассказывает о Проне — необыкновенно мужественном мальчике, похожем на Улена. Вождь предполагает, что Улен отправится на поиски жены, так как в этом его судьба, которую не обманешь. Герой обещает сыну, что, вернувшись с Млавой, научит его всему, что знает сам.
3
Павел долго выслеживает Варю и в дождливый грозовой вечер наконец видит её с новым кавалером. Девушка вновь ломает при нём комедию, насмешничая и прикалываясь. Радостный герой узнаёт свою нисколько не изменившуюся любимую девушку. Между героями происходит объяснение: они по-прежнему боятся обнажить душу и впасть в зависимость один от другого. Так ни до чего не договорившись, они вновь расстаются.
Приключения и победа
Прошлое. Улен настигает племя хазар, пленивших Млаву. Её держит при себе наложницей хан Амин. Герой скрывается в ущелье и оттуда наносит урон врагу, тайно убивая. Никто его не видит. Хан посылает храброго воина Урду пленить ловкого россича. Воины знакомятся и проникаются взаимной симпатией. Улен настаивает, чтобы сам хан пришёл к нему торговаться за Младу.
4
Проходит два года. Жизнь Павла возвращается в прежнюю колею: он работает на заводе, одинок, домосед, успокоился, стал обывателем. Его знакомят с вдовой Катериной, приятной женщиной. Их отношения сразу становятся предсказуемыми и близкими. Вскоре женщина беременеет. Между героями происходит объяснение: Катерина влюблена, Павел — нет, но очень рад возможности стать отцом. Они начинают жить вместе.
5
Приехавший его навестить Спирин упрекает друга в отказе от прежних идеалов, от истинной любви. Павел отвечает, что Варя была прекрасной мечтой, а Катерина и ребёнок — настоящая жизнь. «…Любил, точно. И сейчас люблю, отрицать нечего. Но как образ дальний. А здесь всё земное, настоящее, без обману».
Павел признаётся другу: «…Я тебе скажу, в чём оно, наше горе… Маленькие мы людишки,… маленькие, а замахивались на большое. Вот и иссякли до поры. В любви замахивались и в работе. А вышел — пшик. Посмеялись над нами…». Ночью ему снится Варя и он понимает, что их жизни прошли рядом, но не соприкоснулись.
Приключения и победа (окончание)
Прошлое. Улен завлекает в ловушку хана Амина и вынуждает того отдать Млаву. Хан возвращает женщину убитой. Герой хоронит жену и вместе с ней прощается со своей молодостью. На могиле Млавы он разговаривает с возлюбленной, понимая, что быть вместе им не было суждено и Млава была его мечтой. Он возвращается к разорённому городу, где его ждёт сын, но «всеохватная его печаль от сердца к сердцу, от ростка к ростку докатится чёрной каплей до наших дней».
6
Павел и Катерина с удовольствием возятся с новорожденным сыном Ваней. Ради него герой выгоняет из дома котёнка, долго занимается разменом квартир на большую, женится на Катерине. Получив и жену, и сына, и большую квартиру, герой прислушивается к себе и подытоживает, что у него есть всё, чего он желал, и он по-видимому счастлив. «Он пережил свои желания,… но что-то в нём оборвалось, истончилось…».
7
Павел стареет, у него иногда болит сердце. Сын Ваня растёт и радует родителей.
Случайно в транспорте Павел встречает Варю. Девушка, ставшая ещё красивее, наконец-то признаётся ему в любви и предлагает быть вместе. Она убеждена, что они предназначены друг другу свыше: «Нам друг от друга не сбежать. Ты моя добыча, я твоя». Павел знает, что никогда не разлюбит Варю: «…Разматывалась зловещая нить предназначения. Жутким ветром их сплющило друг о друга, …скоро оба они смешаются в кровавое месиво. Такова любовь. Им нет спасения — ни ему, ни ей. Непонятно только, зачем другие должны страдать? Те, которые им близки…». Герой отказывается от позднего счастья, не желая предавать семью. В разговоре Павел упоминает прочитанную им сказку о древнем воине-россиче, искавшем украденную у него жену, т.е. об Улене.
После этой встречи он стремительно стареет и им овладевает душевное беспокойство. Наконец он выходит из дома на минутку и пропадает. Поиски ни к чему не приводят. В ответ на печальное известие об исчезновении квартира наполняется его друзьями: Раймун и Лилиан, Шпунтов и Вильямина, Спирин и Урсула, Варя — все ждут возвращения героя, ибо «Пашута не из тех, кто уходит навеки. И он не из тех, кто бросает в беде».