Éplucher et laver les pommes de terre. Les couper en morceaux. Cuire dans un grand volume d'eau salée pendant 30 minutes.
Faire revenir l'oignon et le bœuf haché dans une poêle pendant 10 minutes. Ajouter l'ail, l'échalote et mélanger.
Une fois les pommes de terres cuites, les écraser grossièrement avec une fourchette ou les passer au presse-purée. Ajouter le beurre, le lait, la muscade. Saler et mélanger.
Dans un plat, garnir le fond de la moitié de hachis. Ajouter ensuite la moitié de purée. Recommencer avec une couche de viande puis de purée. Saupoudrer de gruyère râpé.
Passer au four chaud à 200° pendant 10 minutes, puis quelques minutes au grill pour gratiner le fromage.