Demolhe o bacalhau.
Cozinhe o bacalhau em 600 ml de leite (reserve o caldo).
Corte a cebola em rodelas bem finas, leve ao fogo com azeite ou óleo até ficar mole e transparente.
Escorra o bacalhau, coe o leite e reserve.
Desfaça o bacalhau em lascas e junte a cebola, deixe refogar lentamente.
Polvilhe com 2 colheres de farinha.
Mexa e regue com o leite coado, deixe engrossar mexendo de vez em quando.
Descasque e corte as batatas em cubinhos e frite-as em óleo não muito quente, de forma a deixá-las mais cozidas que fritas.
Escorra as batatas e junte ao bacalhau.
Tempere com sal, pimenta e noz-moscada.
Coloque em um pirex untado e espalhe por cima 200 ml de creme de leite (sem soro), polvilhe queijo ralado
Leve ao forno até gratinar.