Далеко-далеко, за синіми морями та високими горами, розкинулося велике князівство. У ньому жили князь із княгинею та троє їхніх синів. Минув час, і вирішив князь оженити своїх дітей. Для двох старших синів наречених вже підібрали, а от для наймолодшого, Іванка, підходящої дівчини не знайшлося.
Іншим був Іванко — не схожий на братів. Він не марив славою чи війнами, а любив тишу, музику й пісню. Цілими днями сидів із сопілкою, складаючи мелодії, які змушували серце тріпотіти.
Тоді й сказав йому батько:
— Сам вирушай у мандри, сину. Шукай свою наречену. Я не стану заперечувати проти того, кого обереш.
Послухався Іванко, сів на коня та подався світ за очі — не як княжич, а як простий мандрівник.
День мандрує, другий, третій… Стомився — приліг відпочити на узліссі. І тут до нього злетів метелик, мов жива веселка. Сів на щоку, ніби хотів щось прошепотіти. Іванко замилувався тим створінням, узяв його обережно на долоні, погладив, а метелик зручно вмостився йому на плечі.
Відтоді мандрували разом — юнак і метелик. І хоч куди їхав Іванко, той яскравий супутник не покидав його.
Одного дня Іванко добрався до самого берега моря. Несподівано здійнявся сильний вітер, ледь не зірвав юнака з коня. Але Іванко притис метелика до грудей, ховаючи від стихії.
Коли буря вщухла, трапилося диво: метелик у його руках почав світитися й змінюватися — і за мить перед Іванком стояла чарівна дівчина з ніжною усмішкою та сяючими очима.
— Ти врятував мене, — мовила вона. — Зла відьма зачарувала мене, і лише турбота та тепло серця могли зняти її прокляття.

Так знайшов Іванко свою долю — не тільки найвродливішу, а й наймудрішу дівчину. Вони повернулися додому, де князь прийняв обраницю сина з радістю.
І жили вони довго і щасливо — в любові, злагоді та мирі.