Coloque o bacalhau num tacho, junte água até ficar bem coberto e leve ao lume. Quando estiver a ferver, desligue o lume e deixe o bacalhau arrefecer dentro da água. Escorra o bacalhau, limpe-o de pele e espinhas e lasque-o finamente. Reserve.
Descasque as batatas, corte-as em cubinhos, lave-os e deixe-os escorrer. Descasque as cebolas, corte-as em meias-luas finas, deite-as num tacho, junte o azeite, leve ao lume e deixe cozinhar até ficar transparente. Junte o bacalhau ao tacho, misture bem e deixe cozinhar, em lume brando.
Frite as batatas em óleo quente e abundante, até ficarem douradinhas. Escorra-as, adicione-as também ao tacho, envolva e junte a salsa picada.
Derreta a margarina num tacho, acrescente a farinha, mexa bem e junte o leite quente, em fio e mexendo sempre, até ficar um creme liso. Adicione as natas, envolva, retire do lume e tempere com sal, pimenta e a noz-moscada.
Numa tigela à parte, misture a gema com a mostarda e o sumo do limão, depois envolva com o creme do tacho, junte o pão ralado e misture. Deite a mistura do bacalhau num tabuleiro, espalhe bem, cubra com o creme anterior e leve ao forno, pré-aquecido a 200ºC, até ficar douradinho. Retire e sirva.