Verwijder de houtachtige onderkant van de asperges en halveer ze. Stoom ze in circa 10 minuten beetgaar. Verhit de roomboter in een pan en bak de kabeljauw in 4-6 minuten gaar. Breng op smaak met peper en zout en het citroensap.
Snijd voor het aspergeschuim de asperge in stukjes en kook circa 20 minuten in de visbouillon op zacht vuur. Schep de asperge eruit en doe de room erbij. Laat inkoken totdat de saus begint in te dikken. Meng de koude boter erdoorheen met een garde en voeg een snufje cayennepeper toe. Breng de saus naar het kookpunt, maar laat niet meer koken. Breng op smaak met zout en schuim de saus op met de staafmixer.
Schep het schuim in een diep bord en leg daarbovenop de asperges en de kabeljauwfilet. Breng eventueel extra op smaak met peper en zout.