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