Slippy McGee lever av å bryte opp pengeskap, og prøver å flykte etter å ha brutt seg inn i enda et pengeskap. Når han ankommer byen Attleboro i North Carolina, hopper han fra et godstog, men skader beinet og blir slått bevisstløs. Han blir snart oppdaget og ført til pastor De Rance, byens åndelige leder. Når Slippy kommer til bevissthet, oppdager han ut at beinet hans har blitt amputert. Han blir forbitret over alt som har skjedd med ham, så pastor De Rance påtar seg oppgaven med å rehabilitere ham. Slippy McGee forandrer navn til John Flint, og overleverer verktøyene han tidligere hadde brukt til å begå innbrudd til presten. Han begynner å interessere seg for sommerfugler, og byens barn gir ham kallenavnet «The Butterfly Man». Snart møter han Mary Virginia Eustis og hunden hennes Kerry. Så får doktor Westmoreland, en venn av presten, tak i et kunstig bein McGee kan bruke. Men John oppdager at Mary Virginia elsker en annen mann, som heter Lawrence Mayne.