Lata 20. David „Noodles” Aaronson radzi sobie jak może jako biedny ulicznik w żydowskim getcie Williamsburg na Brooklynie na początku lat dwudziestych XX wieku. Jego gang tworzą: Patrick „Patsy” Goldberg, Phillip „Cockeye” Stein i mały Dominic. Pracują dla Bugsy'ego, lokalnego bandyty, potem jednak poznają Maxa Bercovicza i zaczynają działać niezależnie pod wodzą jego i Noodlesa. Noodles podkochuje się bez wzajemności w Deborah Gelly (Jennifer Connelly), która pragnie zostać kiedyś tancerką i aktorką. W ataku gangu Bugsy'ego zastrzelony zostaje Dominic. Noodles natychmiast mści się, zabijając nożem sprężynowym Bugsy'ego. Interweniują policjanci i Noodles pcha nożem także jednego z nich. Trafia do więzienia, na zewnątrz sprawami kieruje Max.
Lata 30. Po jedenastu latach, w 1932 roku, dorosły Noodles (teraz grany przez Roberta de Niro) zostaje zwolniony z więzienia i nawiązuje ponownie kontakt ze starym gangiem. Max (James Woods), Patsy (Hayden) i Cockeye (Forsythe) są teraz znaczącymi graczami w nielegalnym handlu alkoholem podczas prohibicji. Noodles spotyka się też ze znajomymi z dawnych czasów: Deborah (Elizabeth McGovern), jej bratem Grubym Moe (Rapp), który prowadzi nielegalny bar i Peggy (Amy Ryder), prostytutką z sąsiedztwa.