Prvi dio
Glavni junak - osmogodišnji Remy - živi u francuskom selu, sam sa majkom, koju naziva majkom Barberen. Njezin suprug, zidar Barberen, živi i radi u Parizu. Remy se ne sjeća da je jednom došao kući. Jednom s poslom dogodi se nesreća s Barberenom i on stigne u bolnicu.
Da bi primio naknadu, Barberen tuži vlasnika. Njegova supruga mora prodati kravu, obiteljsku sestru, platiti zakonske pristojbe, ali Barberenov sud izgubi i vrati se kući. Kad je postao osakaćen, više ne može raditi.
Po povratku Barberina, Remy s užasom saznaje da nije njegov vlastiti sin, već posvojen. Jednom je Barberen na ulici našla petomjesečnu bebu na čijim su odjećama izrezane oznake. Barberen je predložio da ga odvedu dok ga roditelji ne pronađu. Sudeći po odjeći, dijete je bilo iz imućne obitelji i Barberen je računala na dobru nagradu. Tada je obitelj Barberen imala vlastitog sina, a Barberenova supruga uspjela je prehraniti njih dvoje. Ali Barberenov sin ubrzo je umro, a žena se priklonila Remyju, zaboravljajući da on nije rođeno dijete. Sada Remyu postaje teret i Barberen zahtijeva da ga supruga pruži u sklonište.
Barberen, podlegavši nagovoru svoje žene, odlučuje zatražiti od seoske uprave koristi za Remyja. Ali upoznaje lutajućeg umjetnika Vitalisa, koji luta s majmunom i tri psa, zarađujući za život u cirkuskim predstavama. Vitalis nudi da kupi Remyja od Barberina, kako bi ga učinio svojim pomoćnikom. Ne dopustivši dječaku da se oprosti od žene koju voli kao majka, Barberen prodaje Remyja.
Putujući s Vitalisom, Remy mora trpjeti glad i hladnoću, no umjetnik se ispostavlja ljubaznom i mudrom osobom, a Remy svim srcem voli svog gospodara. Vitalis je dječaka naučio čitati, pisati, računati, pokazivao je osnove glazbene notacije.
Vitalis i Remy dolaze u Toulouse. Tijekom izvođenja, policajac zahtijeva da na psiće natakne njuške. Nakon što je odbijen, policijski službenik šalje Vitalisa u zatvor na dva mjeseca. Sad je gospodar trupe Remy. Nema dovoljno iskustva, dječak ne zarađuje gotovo ništa, a umjetnici moraju gladovati.
Jednom, dok se uvježbava sa životinjama na obali rijeke, Remy vidi ženu koja lebdi na njoj na jahti. Pored žene je ležao dječak na krevetu. Vlasnici jahte svidjeli su se lutajućim umjetnicima, a nakon što nauče njihovu priču, žena nudi da ostane s njima kako bi zabavljala svog bolesnog sina Arthura. Pokazalo se da je žena Englez po imenu gospođa Milligan. Ona kaže Remyju da je njezin najstariji sin nestao pod tajanstvenim okolnostima. Muž je u to vrijeme bio blizu smrti, a njegov brat James Milligan počeo je tražiti dijete. Ali njega nije zanimalo pronaći dijete, jer u slučaju brata bez djece nasljeđuje naslov i bogatstvo. Ali tada je gospođa Milligan rodila drugog sina, koji je bio slab i bolan. Majčina ljubav i briga spasili su dječaka, ali on je ležao u krevetu zbog tuberkuloze kuka.
Dok je Vitalis u zatvoru, Remy živi na jahti. On je prožet ljubavlju prema gospođi Milligan i Arthuru, prvi put u životu živi mirno i bezbrižno. Iskreno zavidi Arthuru što ima majku koja voli. Gospođa Milligan i Arthur stvarno žele da Remy ostane s njima, ali Remy ne može napustiti Vitalis. Gospođa Milligan piše pismo Vitalisu, kako bi nakon puštanja naišao na njih na jahti.
Bez obzira kako od Milligana traže da ostave Remyja s njima, Vitalis se ne slaže i Remy ponovno započinje život pun lutanja i teškoća. Jednu zimsku noć provode u šumskoj kolibi drvosječa. Dva psa odlaze u šumu i nestaju. Trupa gubi dvojicu umjetnika, a već mala zarada pada. Ubrzo, majmun umre od prehlade.Vitalis dobiva ideju da je ovo kazna za to što nije napustio Remy s gospođom Milligan.
Sada, sa samo jednim psom, Vitalis i Remy dolaze u Pariz. Tamo Vitalis odlučuje poslati Remyja svom poznaniku Talijanu Garafoliju, tako da će dječaka naučiti svirati harfu, a on će predavati glazbu i podučavati nove pse.
U Garafoliju, Vitalisa i Remya susreće ružni dječak od desetak godina, po imenu Mattia. Vitalis napušta Remyja s njim i nastavlja posao. Dok je Vitalis bio odsutan, Mattia je rekao da je Talijan iz siromašne obitelji, Garafoli ga je odveo svojim učenicima. Dječaci pjevaju i sviraju na ulicama, a zaradu predaju svom učitelju. Ako ne donose dovoljno novca, Garafoli ih tuče i ne hrani ih. U to vrijeme dolaze Garafolijevi učenici, a Remy vidi kako se okrutno postupa. Za vrijeme gadjanja jednog od studenata dolazi Vitalis i prijeti Garafoliju policijom. Ali kao odgovor, čuje prijetnju da će jedno ime imenovati, a Vitalis će se morati sramiti od srama.
Vitalis uzima Remyja i oni opet odlaze lutati. Jedne noći, iscrpljen od gladi i hladnoće, Remy zaspi. Vrtlar Aken pronalazi ga malo živog i dovodi ga u svoju obitelj. Izvještava i strašnu vijest: Vitalis je mrtav. Čuvši Remyjevu priču, Aken ga poziva da živi s njima. Umrla mu je supruga, a vrtlar živi s četvero djece: dva dječaka i dvije djevojčice. Mlađa Lisa bila je glupa. Sa četiri godine bila je bez riječi zbog bolesti.
Da utvrde identitet Vitalisa, policajac s Remyjem i Akenom okreću se Garafoliju. Pravo ime Vitalisa bilo je Carlo Balzani, bio je jedan od najpoznatijih opernih pjevača u Europi, ali je napustio kazalište zbog gubitka glasa. Potopio se niže dok nije postao trener pasa. Ponosan na svoju prošlost, Vitalis bi više volio smrt nego da otkriva svoje tajne.
Remy ostaje s Akenom. On, zajedno s članovima obitelji, radi u vrtu. Vrtlar i njegova djeca vrlo su privrženi dječaku, posebno Lisi.
Prošle su dvije godine. Nesreća pada na obitelj vrtlara - uragan je slomio cvijeće koje je Aken prodao, a obitelj ostaje bez sredstava za život. Aken također nema ništa za vraćanje dugogodišnjeg zajma, a zatvoren je na pet godina zatvora. Rođaci vode djecu k sebi, a Remy mora uzeti svog psa i opet postati umjetnik vagabonda.
Drugi dio
Stigavši u Pariz, Remy tamo slučajno upozna Mattia. Od njega se saznaje da je Garafoli smrtno pretukao jednog od svojih učenika i bio poslan u zatvor. Sada i Mattia mora lutati ulicama. Dječaci odlučuju dati koncerte zajedno. Mattia savršeno svira violinu, a zarada joj je puno veća. Uz put, uspjet će dobiti glazbene lekcije i poboljšati svoju igru. Remy želi kupiti kravu za majku Barberen.
Nakon zarađenog novca, momci biraju kravu i donose je na Barberens. Udomiteljica je cijelo to vrijeme čeznula za Remyjem. Kaže mu da je Barberen sada u Parizu. Upoznao je čovjeka koji je u ime njegove obitelji tražio Remyja. Remy i Mattia odluče otići u Pariz.
U Parizu Remy saznaje za Barberinu smrt, ali u umirućem pismu svojoj supruzi rekao je adresu Remyjevih roditelja, koji žive u Londonu. Remy i Mattia odlaze u London.
Na naznačenoj adresi dječaci pronalaze obitelj po imenu Driscoll. Članovi obitelji: majka, otac, četvero djece i djed, apsolutno su ravnodušni prema pronađenom djetetu. Samo otac govori francuski. Kaže Remyju da ga je ukrala djevojka koja se odlučila osvetiti da se Remyev otac nije oženio. Budući da Mattia govori engleski, Remy komunicira sa svojom obitelji preko njega.
Mattia i Remy šalju se spavati u staju. Dječaci primjećuju da neki ljudi ulaze u kuću, donose stvari koje obitelj Driscoll pažljivo skriva. Mattia shvaća da su Driscolli ukradeni kupci. Kad to prijavi Remyu, užasne se. Dječaci sumnjaju da Remy uopće nije njihov sin.
Obitelj Driscoll nije u stanju nahraniti još dva, a Remy i Mattia održavaju nastup na ulicama Londona. Driscollovu pažnju privlači pas Remy. Zahtijeva da njegovi sinovi šetaju ulicom s njom. Već nekoliko dana dječaci nastupaju samostalno, ali jednog dana otac dopušta Mattiju i Remyju da povedu psa sa sobom. Odjednom pas nestane i vrati se s svilenim čarapama u zubima. Remy shvaća da su Driscoll dječaci naučili psa kako krasti. Otac objašnjava da je ovo glupa šala i da se neće ponoviti.
Kako bi riješio svoje sumnje, Remy piše pismo majci Barberen s molbom da opiše odjeću u kojoj je pronađena. Dobivši odgovor, pita oca, ali daje isti opis stvari. Remy je užasnut: jesu li to zapravo ljudi koji su prema njemu potpuno ravnodušni, a je li i njegova obitelj?
Jednog dana u Driscoll dolazi stranac. Mattia je čuo razgovor, kaže Remyju da je ovo James Milligan, brat pokojnog supruga gospođe Milligan, ujaka Arthura. Također izvještava da se Arthur zahvaljujući majčinim zabrinutostima oporavio.
Ljeti su Driscollli krenuli u trgovinu širom zemlje, povevši sa sobom Mattia i Remyja. Iskoristivši trenutak, dječaci bježe i vraćaju se u Francusku. Tamo odlučuju pronaći gospođu Milligan. Tijekom potrage, dječaci ulaze u selo u kojem živi Lisa. Ali Lise nije bilo. Rođaci su vezali djevojku da živi s bogatom damom koja pluta rijekom na jahti.
Gospođu Milligan s Arthurom i Lizom dječaci pronalaze u Švicarskoj. Na zadovoljstvo Remyja, Lisa je počela govoriti. Bojeći se Jamesa Milligana, Mattia se prvo susreće s gospođom Milligan. Dječaci se smještaju u hotel, a nekoliko dana kasnije gospođa Milligan ih poziva k sebi. Majka Barberen je tamo. Donosi odjeću u kojoj je pronađena Remy. James Milligan je također pozvan tamo. Gospođa Milligan predstavlja Remyja kao svog najstarijeg sina kojeg je ukrao Driscoll na zapovijed Jamesa Milligana.
Mnogo godina kasnije. Remy sretno živi sa svojom majkom, koja je još uvijek lijepa, sa suprugom Lisom i njezinim malim sinom Mattijom, kojeg majka Barberen njeguje.
Remyjev najbliži prijatelj je Mattia, danas poznati glazbenik. Često dolazi u posjet Remyju i svira violinu, a zatim njihov stari pas, kao i prije, obilazi publiku šalicom za prikupljanje novca.