Coza o bacalhau em água e deixe ferver durante 5 minutos. Retire do lume, passe a água da cozedura por um passador de rede, deite-a para outro tacho e reserve. Deixe amornar o bacalhau, rejeite-lhe as peles e as espinhas e deite numa tigela. Lave as batatas, corte-as ao meio e coza-as com a pele na água do bacalhau. Depois escorra-as, retire-lhes a pele, passe-as pelo passevite, junte ao bacalhau e misture.
Descasque e corte as cebolas em meias luas finas. Arranje e lave os alhos franceses, rejeite-lhes a parte verde e corte-os em rodelas finas. Descasque e rale as cenouras. Leve um tacho ao lume com o azeite, junte a cebola e deixe refogar até que fique douradinha. Adicione depois o alho francês, deixe refogar mais um pouco até que fique macio, junte de seguida as cenouras e deixe cozinhar até ficar tudo bem macio.
Adicione a mistura anterior à tigela do bacalhau, rectifique o sal, tempere com pimenta e noz-moscada, junte o leite e misture muito bem. Deite num tabuleiro de louça, alise, polvilhe com pão ralado e leve ao forno pré-aquecido a 220°C até que fique douradinho. Retire e sirva decorado a gosto.