Jesse (Jason James Richter) jest wychowywany przez rodziców zastępczych, Glenna (Michael Madsen) i Annie (Jayne Atkinson) Greenwoodów. Tegoroczne wakacje spędza wraz z nimi nad zatoką. Chłopiec ma nadzieję, że spotka tu zaprzyjaźnioną orkę, której przed kilkoma laty pomógł odzyskać wolność. Pewnego dnia spełniają się jego marzenia. W zatoce pojawia się Willy ze swoją rodziną. Ku radości chłopca orka rozpoznaje go. Wkrótce okazuje się, że Willy'emu ponownie grozi niebezpieczeństwo. U wybrzeży zatoki doszło bowiem do wycieku ropy - plama oleju rozciąga się i odcina mu drogę powrotną. Ponadto Willy i jego siostra Luna mają zostać oddani do parku rozrywki, gdzie będą stanowić jedną z głównych atrakcji. Właściciel oceanarium, Bill Wilcox (M. Emmet Walsh), nie ma żadnych skrupułów. Jesse postanawia za wszelką cenę pomóc przyjacielowi.