Fabuła powieści rozpoczyna się w pod koniec 1647 roku. Nocą na kresach południowo-wschodnich Rzeczypospolitej Jan Skrzetuski w drodze powrotnej z Krymu przemierza stepy z oddziałem swoich wiernych żołnierzy. Skrzetuski jest namiestnikiem chorągwi pancernej Jeremiego Wiśniowieckiego. Zauważa samotnego jeźdźca, który zostaje napadnięty, wspiera więc go, zabijając bandytów. Nieznajomy jest mu wdzięczny za uratowanie życia, mówi, iż nazywa się Bohdan Zenobi Chmielnicki i podaruje bohaterowi swój pierścień. Skrzetuski udaje się w dalszą podróż. W Czerhynie pewien stary żołnierz na wieść o tej przygodzie wyjaśnia, że Chmielnicki jest kozackim wodzem, i jeżeli przedostanie się do swego ludu z królewskimi listami, może dojść do buntu. Do czerhyńskiej gospody przybywa Czapliński, jeden ze sprawców napadu na Kozaka. Wieść o uratowaniu życia Chmielnickiego wprawia go we wściekłość. Pułkownik Barabasz oznajmia komisarzowi Zaćwilichowskiemu kradzież tajnych listów, spodziewają się, że wkrótce na Ukrainie wybuchnie powstanie.
Styczeń 1648. Wyjazd Skrzetuskiego z Czertnia do Łubniów w towarzystwie posłów, m.in. Longina Podbipięty. Ów człowiek złożył kiedyś przysięgę, że nie ożeni się, dopóki nie zetnie głów trzech wrogów. Chce zaciągnąć się u księcia, by mieć możliwość wypełnienia ślubu. Skrzetuski udaje się w pogoń za rarogiem i zbacza z drogi, natykając się na popsuty powóz. Podróżniczkami była pani Kurcewiczowa i jej pasierbica Helena, dziewczę niezwykłej urody. Szlachcic pomaga kobietom, zaś Kurcewiczowa z wdzięczności zaprasza go do swego majątku w Rozłogach. Skrzetuski, urzeczony urodą Heleny, korzysta z zaproszenia. Dochodzi do uczty, podczas której Helena wyznaje, że i szlachcic jest bliski jej sercu i przyjmuje oświadczyny Skrzetuskiego. Szczęście młodych burzy przebywający tam Kozak imieniem Bohun, któremu przyrzeczono rękę dziewczyny. Kurcewiczowa zmienia zdanie co do losu pasierbicy, kiedy wychodzi na jaw, że majątek jest zagarnięty wbrew prawu, ale Skrzetuski oświadcza, że nie zamierza go im odbierać. W zamian za gwarancję pozostania Rozłogów w jej rękach dochodzi do zaręczyn Skrzetuskiego i Heleny. Wkrótce bohater musi opuścić dom ukochanej i jechać do Łubniów, gdzie przebywa książę Jeremi Wiśniowiecki. Tęsknota za ukochaną daje się Skrzetuskiemu we znaki, więc posyła do jej domu Rzędziana, swego sługę, który po kilkunastu dniach powraca z listem od najdroższej wybranki.
Napięcie na linii Kozacy - ukraińska magnateria wciąż wzrasta. Coraz bardziej oczywiste staje się to, że wkrótce dojdzie do wojny domowej. Skrzetuski szpieguje działania Kozaków, a że wymaga to wyjazdów, przy okazji odwiedza ukochaną. W końcu jedzie do Czerhyna, gdzie uzyskuje informację, że Chmielnicki, przewodnicząc Kozakom, zamierza wypowiedzieć Polakom wojnę. Skrzetuski posyła Rzędziana z listami do Rozłogów, sam zaś podróżuje dalej wzdłuż Dniepru. Dochodzi do potyczki między oddziałem Skrzetuskiego a Kozakami, którą przegrywa główny bohater. Zostaje oszczędzony i wzięty w niewolę Tuhaj-beja, który rozpoznaje w nim posła z Krymu. Chmielnicki także rozpoznaje Skrzetuskiego i wykupuje go od Tuhaj-beja za cztery tysiące talarów. Zabrania Skrzetuskiemu wracać do Łubniów, ponieważ wiadome jest, że bohater przekazałby księciu informacje o kozackich przygotowaniach do wojny. W ciągu następnych dni oddziały Kozaków nacierają na kolejne polskie grupy, odnosząc liczne zwycięstwa i biorąc w niewolę hetmanów. Skrzetuski zostaje wypuszczony dopiero po zdobyciu Korsunia.
Skrzetuski choruje na wieść o klęskach wojska polskiego i wciąż rozpamiętuje ocalenie życia Chmielnickiego - gdyby tego nie dokonał, nie doszłoby do powstania. W końcu wyrusza do Czerhyna, później zaś do Rozłogów, które zostaje jako obraz nędzy i rozpaczy. Posiadłość została spalona, a jej mieszkańcy wymordowani, bowiem Bohun przechwycił listy Skrzetuskiego, w których wyczytał, że Helena ma zostać jego żoną. Na wieść o tym wpadł w nieopanowany gniew, ponieważ dano mu słowo, że otrzyma rękę Heleny. Zabija wszystkich z wyjątkiem Heleny, którą więzi razem z Zagłobą. Okazuje się jednak, że Zagłoba przechytrzył Kozaków, upijając ich winem, po czym uciekł z dziewczyną, po drodze okradając parę przechodniów i przebierając się w ich stroje - Zagłoba za starego dziada, Helena za pazia niemowę. Aby nikt nie rozpoznał na pierwszy rzut oka płci pazia, Zagłoba obciął Helenie włosy. Bohun po odzyskaniu przytomności ruszył za uciekinierami, którzy jednak zbiegli na dobre, u brzegów Dniepru wsiadając na przepływającą łódź.
Bunty Kozaków rozszerzają się, tak że powstanie opanowuje całą Ukrainę. Wiśniowiecki przenosi się do Łubniów, a po drodze zastaje Skrzetuskiego na zgliszczach Rozłogów. Dopiero po kilku dniach załamany rycerz otrzymuje radosną wiadomość o ocaleniu Heleny przez Zagłobę. Wojsko dociera do Łubniów, gdzie rozpoczęto zakrojone na szeroką skalę przygotowania do walki z wojskami kozackimi. Dochodzi do bitwy, Polacy zwyciężają, ale po obu stronach są ogromne straty. Wiśniowiecki rośnie w siłę i Kozacy proponują mu zawarcie pokoju na swych warunkach, na co książę nie zgadza się. Znów posyła Skrzetuskiego na zwiady. Rycerz przypadkiem napotyka się na Zagłobę, który oznajmia, że Helena znajduje się w Barze i opiekuje się nią pani Sławoszewska. Dochodzi do kolejnej bitwy, która trwa cały dzień i przynosi Polakom kolejne zwycięstwo. Wracając z pola bitwy Skrzetuski spotyka Rzędziana, który opowiada, co mu się przytrafiło - wkradł się w łaski Bohuna, bowiem opatrzył jego rany, i dzięki udawaniu poparcia dla sprawy kozackiej zdołał przeżyć. Teraz jednak zamierza dalej towarzyszyć Polakom, jedzie ze Skrzetuskim do Zbaraża. Wszyscy wiedzą o planach matrymonialnych głównego bohatera i na cześć Skrzetuskiego wydana zostaje uczta, podczas której niespodziewanie przysyła poseł, oznajmiający, że zaatakowano Bar.
Podczas oblężenia miasta Bohun przybywa po Helenę, która na jego widok próbuje popełnić samobójstwo, ale nie trafia. Zakochany w niej człowiek porywa ją i zostawia u wiedźmy Horpyny, mieszkającej w niedostępnej krainie. Helena zamiast podziękować Bohunowi za uratowanie nienawidzi go i odrzuca jego oświadczyny. Martwi się o Skrzetuskiego, ponieważ nie wie, co się z nim teraz dzieje. Jej ukochany na wieść o zdobyciu miasta wpada w rozpacz, widząc to Zagłoba oświadcza, że znajdzie Helenę. Nadchodzą nowe rozkazy Wiśniowieckiego. Bohaterowie wyruszają z pięcioma setkami wojska, by szpiegować kozaków. Oddziały rozdzielają się, a Zagłoba, jako człowiek chętny do zabawy, korzysta z zaproszenia napotkanych weselników. Niespodziewanie odnajduje go Bohun, który pragnie dokonać zemsty na pijanym szlachcicu, ale jego plany pokrzyżuje Michał Wołodyjowski, który przybywa, wezwany przez gości weselnych. Zagłoba i Wołodyjowski przysięgają odnaleźć porwaną dziewczynę. Wyruszają do Zbaraża, a w drodze dochodzi do nich wieść o klęsce pod Piławicami. Teraz kierują się na Lwów, który także jest zagrożony.
Zagłoba i Wołodyjowski jadą do Warszawy, by wziąć udział w sejmie elekcyjnym. Znowu spotykają Bohuna, a Wołodyjowski staje z nim do walki. Zwycięża i ciężko rani Kozaka, zachowuje się jednak honorowo i opatruje jego rany. Dwójka szlachciców udaje się do Zamościa, później do Zbaraża, w tym czasie Podbipięta z listami kieruje się do Krakowa. Skrzetuski rusza na Kijów, liczy bowiem, że spotka tam Bohuna, jednak spotyka tylko Chmielnickiego, który pozwala mu na poszukiwania ukochanej.
Do Zagłoby i Wołodyjowskiego przybywają informacje o nagłej śmierci Heleny, jednak Rzędzian zaprzecza temu, ponieważ od Bohuna wie, że dziewczyna żyje, ale jest uwięziona. Podaje miejsce kryjówki czarownicy, która opiekuje się nią. Rzędzian, Wołodyjowski i Zagłoba decydują się następnego dnia wyruszyć w drogę w celu odbicia Heleny. W tym celu ubierają stroje kozackie, by łatwiej się przemieszczać. Odnajdują kryjówkę czarownicy, zabijają ją oraz karła Czeremisa i uwalniają dziewczynę. Wracają do Zbaraża, gdzie ma dojść do kolejnej bitwy. Wiśniowiecki także tam przybywa, zaś dzień po jego przyjeździe dociera tam Chmielnicki z kozackim wojskiem. Dochodzi do walki, w której początkowo zwyciężają Polacy, jednak dochodzi do burzy i walka zostaje nierozstrzygnięta. Nocą Skrzetuski, Zagłoba, Wołodyjowski i Podbipięta przedostają się do obozu wroga i wysadzają ich wieże oblężnicze. Tymczasowe zawieszenie broni kończy się żądaniem wydania księcia Wiśniowieckiego. Kozacy atakują nocą Polaków, ale zostają pokonani. Podbipięcie udaje się spełnić swe przyrzeczenie - ściął trzy głowy Kozaków jednym ciosem.
Sytuacja jest ciężka, Podbipięta postanawia przejść przez obóz Kozaków do króla, jednak ginie podczas wykonywania tej misji. Następnej nocy w jego ślady idzie Skrzetuski, udaje mu się dotrzeć do Toporowa, gdzie przebywa król. Dochodzi do odsieczy Zbaraża. Skrzetuski, wycieńczony drogą, traci przytomność i odzyskuje ją po 8 dniach, kiedy otaczają go przyjaciele i Helena. Jest niezwykle szczęśliwy z połączenia z ukochaną.
Przez dwa lata panuje pokój między Kozakami a Polakami, jednak znów dochodzi do buntów. 7 lipca 1651 roku dochodzi do ostatniej bitwy, którą wygrywają Polacy.