Первые числа ноября 1920 года. Идёт гражданская война. Войска барона Врангеля блокированы в Крыму. Красная армия готовит наступление.
Бойца Красной армии Некрасова (Олег Янковский), который когда-то был фотографом, вызывает командир полка (Анатолий Папанов) и поручает ему с помощью выданной ему трофейной 35-мм кинокамеры системы Debrie «Parvo» снять с аэроплана расположение вражеских войск в районе Перекопа. Некрасов хочет отказаться, так как он не знает киносъёмочную технику, но командир полка настаивает, а начальник штаба поясняет Некрасову, что за неисполнение приказа он предстанет перед трибуналом. В помощь Некрасову придают бывшего командира роты Ивана Карякина (Ролан Быков), разжалованного в рядовые за то, что собственноручно убил так называемого военспеца, то есть бывшего офицера царской армии.
Карякин считает своей миссией не только помогать Некрасову, но и контролировать его — Некрасов из семьи священнослужителей, и, по мнению Карякина, является ненадёжным и чуждым элементом.
В ходе съёмки вражеских позиций их самолет сбивают, пилот гибнет, а Некрасов и Карякин попадают в плен к махновцам. Хотя Махно и красные являлись на тот момент союзниками, Некрасов предлагает Карякину бежать, так как опасается, что их расстреляют. Некрасов во время побега ухитряется вернуть камеру со съемкой позиций врага. После успешного побега товарищи попадают в расположение войск красных, однако суровая женщина-комиссар не хочет разбираться с двумя неизвестными без документов, в телеге которых обнаружен мундир белого офицера (незадолго до побега Некрасов выяснил, что махновцы расстреляли двоих белых офицеров, решивших перейти к красным, а затем нашёл в телеге мундир одного из них) и приказывает их расстрелять, якобы опознав в Некрасове пытавшего её в своё время офицера контрразведки. Некрасов бросается к проезжающему мимо автомобилю и его узнает начальник штаба его полка. Товарищи спасены и возвращаются в свою часть.
Все руководство полка собирается смотреть результаты разведывательной киносъёмки, однако плёнка оказывается испорченной. Карякин тут же обвиняет Некрасова в предательстве. Руководство полка разочаровано, однако позицию Карякина не поддерживает. Пытаясь загладить свою вину, Некрасов по памяти рисует план вражеских укреплений, и его сведения в точности совпадают со сведениями от перебежчиков. Руководители полка очень довольны, Некрасова награждают маузером. Карякин извиняется и пытается наладить отношения с Некрасовым. В фильме ведутся две параллельные сюжетные линии, которые однажды пересекутся. Первая — о двух товарищах-красноармейцах, вторая — о белогвардейском офицере Александре Брусенцове. Поручик Брусенцов (Владимир Высоцкий) попадает под арест после случайного убийства сослуживца. Крым еще в руках белогвардейцев, но уныние и разочарование в войне деморализовало их. Брусенцова отправляют на оборону Перекопа. Войска Красной Армии берут его штурмом, совершив бросок через залив Сиваш. Брусенцов бежит в Севастополь, откуда уходят последние пароходы. В пути издалека его замечает Карякин, движущийся с полком по направлению на портовый город, и решает его пристрелить, на что Некрасов просит его не делать это и, задержав этой паузой, даёт Брусенцову и его товарищу уйти за бугор. Там поручик, несмотря на отговорки своего напарника, решается использовать последний патрон в винтовке сослуживца, чтобы убить хоть одного красного. Патрон, который остался в случайно подвернувшейся ему винтовке с оптическим прицелом, он тратит на выстрел по отставшему от полка красноармейцу — его жертвой становится Некрасов. Брусенцов встречается с сестрой милосердия Александрой — во время социального катаклизма он ищет хоть что-то, ради чего его жизнь снова обретёт смысл. Брусенцов венчается с Александрой. Александра отказывается покидать родину вместе с ним. Брусенцов оказывается лишён всего, что ему дорого — родины, жены и верного коня Абрека. Конь бросается в воду и некоторое время плывёт за кораблем. Выдержать всё это Брусенцов не в силах — он стреляет себе в висок и падает за борт.
Первые числа ноября 1920 года. Идёт гражданская война. Войска барона Врангеля блокированы в Крыму. Красная армия готовит наступление. Бойца Красной армии Некрасова (Олег Янковский), который когда-то был фотографом, вызывает командир полка (Анатолий Папанов) и поручает ему с помощью выданной ему трофейной 35-мм кинокамеры системы Debrie «Parvo» снять с аэроплана расположение вражеских войск в районе Перекопа. Некрасов хочет отказаться, так как он не знает киносъёмочную технику, но командир полка настаивает, а начальник штаба поясняет Некрасову, что за неисполнение приказа он предстанет перед трибуналом. В помощь Некрасову придают бывшего командира роты Ивана Карякина (Ролан Быков), разжалованного в рядовые за то, что собственноручно убил так называемого военспеца, то есть бывшего офицера царской армии. Карякин считает своей миссией не только помогать Некрасову, но и контролировать его — Некрасов из семьи священнослужителей, и, по мнению Карякина, является ненадёжным и чуждым элементом. В ходе съёмки вражеских позиций их самолет сбивают, пилот гибнет, а Некрасов и Карякин попадают в плен к махновцам. Хотя Махно и красные являлись на тот момент союзниками, Некрасов предлагает Карякину бежать, так как опасается, что их расстреляют. Некрасов во время побега ухитряется вернуть камеру со съемкой позиций врага. После успешного побега товарищи попадают в расположение войск красных, однако суровая женщина-комиссар не хочет разбираться с двумя неизвестными без документов, в телеге которых обнаружен мундир белого офицера (незадолго до побега Некрасов выяснил, что махновцы расстреляли двоих белых офицеров, решивших перейти к красным, а затем нашёл в телеге мундир одного из них) и приказывает их расстрелять, якобы опознав в Некрасове пытавшего её в своё время офицера контрразведки. Некрасов бросается к проезжающему мимо автомобилю и его узнает начальник штаба его полка. Товарищи спасены и возвращаются в свою часть. Все руководство полка собирается смотреть результаты разведывательной киносъёмки, однако плёнка оказывается испорченной. Карякин тут же обвиняет Некрасова в предательстве. Руководство полка разочаровано, однако позицию Карякина не поддерживает. Пытаясь загладить свою вину, Некрасов по памяти рисует план вражеских укреплений, и его сведения в точности совпадают со сведениями от перебежчиков. Руководители полка очень довольны, Некрасова награждают маузером. Карякин извиняется и пытается наладить отношения с Некрасовым. В фильме ведутся две параллельные сюжетные линии, которые однажды пересекутся. Первая — о двух товарищах-красноармейцах, вторая — о белогвардейском офицере Александре Брусенцове. Поручик Брусенцов (Владимир Высоцкий) попадает под арест после случайного убийства сослуживца. Крым еще в руках белогвардейцев, но уныние и разочарование в войне деморализовало их. Брусенцова отправляют на оборону Перекопа. Войска Красной Армии берут его штурмом, совершив бросок через залив Сиваш. Брусенцов бежит в Севастополь, откуда уходят последние пароходы. В пути издалека его замечает Карякин, движущийся с полком по направлению на портовый город, и решает его пристрелить, на что Некрасов просит его не делать это и, задержав этой паузой, даёт Брусенцову и его товарищу уйти за бугор. Там поручик, несмотря на отговорки своего напарника, решается использовать последний патрон в винтовке сослуживца, чтобы убить хоть одного красного. Патрон, который остался в случайно подвернувшейся ему винтовке с оптическим прицелом, он тратит на выстрел по отставшему от полка красноармейцу — его жертвой становится Некрасов. Брусенцов встречается с сестрой милосердия Александрой — во время социального катаклизма он ищет хоть что-то, ради чего его жизнь снова обретёт смысл. Брусенцов венчается с Александрой. Александра отказывается покидать родину вместе с ним. Брусенцов оказывается лишён всего, что ему дорого — родины, жены и верного коня Абрека. Конь бросается в воду и некоторое время плывёт за кораблем. Выдержать всё это Брусенцов не в силах — он стреляет себе в висок и падает за борт.