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