Očistíme ryby, odřízneme hlavy, vykucháme a vyřežeme plátky. Pokrájíme na kusy, osolíme a opepříme. Omyjeme garnáty. Oloupeme cibuli, odřízneme z pórku kořínky a horní tvrdou zelenou část, odtrhneme vnější tvrdé listy. Očistíme celer. Zeleninu omyjeme a pokrájíme na tyčinky. Odkrojíme stopku fazolek, zbavíme vláken, omyjeme a pokrájíme na kousky. Omyjeme bazalku a kerblík, dáme pár lístků bazalky a snítku kerblíku stranou a zbytek odděleně nasekáme.
Povaříme hrášek a fazolky v osolené vařící vodě a scedíme al dente. Pokrájenou zeleninu vhodíme do hrnce, přilijeme 1/4 1 vody, víno, citronovou šťávu, přidáme špetku soli a špetku pepře. Postavíme hrnec na oheň, uvedeme tekutinu do varu a vaříme na mírném plameni 12-15 minut. Přidáme garnáty, vaříme 5 minut, vyjmeme, odstraníme černé střívko a garnáty dáme stranou.
Scedíme uvařenou zeleninu, udržujeme teplou mezi dvěma talíři a vývar si uschováme. Pekáč vymažeme máslem, na dno rozložíme sladkovodní ryby, zalijeme naběračkou horkého vývaru, pekáč zakryjeme hliníkovou fólií a dáme na 5-6 minut do trouby předehřáté na 170 °C. Pekáč vytáhneme z trouby, vyjmeme ryby a udržujeme teplé mezi dvěma talíři.
Šťávu z pekáče přecedíme do pánvičky, přilijeme smetanu a polovinu tekutiny vyvaříme. Stáhneme pánvičku z ohně, vmícháme na kousky pokrájené zbývající máslo. Dáme na servírovací mísu na tyčinky pokrájenou zeleninu, hrášek a fazolky. Na zeleninu položíme kusy rybího masa, vše přelijeme připravenou horkou omáčkou, posypeme nasekanou bazalkou a kerblíkem a hotový pokrm podáváme na stůl.