How to Make Meatball and Potato Casserole
1. Prepare the potatoes
Peel the potatoes if you prefer a smooth finish, or leave the skins on after scrubbing them well. Slice them into rounds about ¼ inch (6 mm) thick. Try to keep the thickness consistent; a mixture of very thin and very thick slices will cook unevenly.
Place the slices in a large saucepan and cover them with cold water. Add a generous pinch of salt. Bring the water to a gentle boil, then simmer for 5–7 minutes. The potatoes should bend slightly but still feel firm in the center. They need to be sturdy enough to stand between the meatballs.
Drain carefully and spread the slices on a clean tray or plate. Let the steam escape for a few minutes. This short pause helps prevent extra water from thinning the sauce.
2. Mix and shape the meatballs
While the potatoes cool, place the ground beef, grated onion, garlic, breadcrumbs, egg, parsley, salt, pepper, and optional paprika in a large bowl. Mix with your hands or a fork just until the ingredients are distributed.
Avoid kneading the mixture heavily. Once it looks evenly combined, shape it into approximately 15 meatballs, each about the size of a small golf ball. Similar-size meatballs will cook at a similar rate.
Wash your hands and any utensils or surfaces that touched the raw beef before working with the cooked potatoes or other ready-to-eat ingredients.
3. Make the sauce
Melt the butter in a small saucepan over medium heat. Add the flour and whisk for about 1 minute, until the mixture is smooth and gently bubbling. It does not need to brown.
Pour in the milk gradually, whisking as you go. Adding it in stages makes it easier to keep the sauce free of lumps. Cook for 4–6 minutes, stirring often, until it lightly coats a spoon. Season with the salt, pepper, and optional nutmeg.
Take the pan off the heat. The sauce should still pour easily. If it becomes very thick while you assemble the casserole, whisk in a splash of milk.
4. Assemble the casserole
Heat the oven to 375°F (190°C). Lightly grease the baking dish with the olive oil or butter.
Set the meatballs in the dish with a little room between them. Tuck the parboiled potato slices upright into the spaces, distributing them across the dish. You can place a slice on either side of each meatball or arrange the potatoes in loose curved rows. The exact pattern matters less than leaving enough space for heat and sauce to circulate.
Pour the sauce slowly over and around the meatballs and potatoes. Use a spoon to guide it into any large gaps. Some of the meatballs and potato edges should remain visible; the ingredients do not need to be submerged.
Cover the dish snugly with foil. If the dish is very full, set it on a rimmed baking sheet to catch any bubbling sauce.

5. Bake, add cheese, and check doneness
Bake the covered casserole for 25 minutes. Remove the foil carefully, keeping your hands away from the steam. Sprinkle the mozzarella and Parmesan evenly over the top.
Return the dish to the oven, uncovered, for 15–25 minutes, until the sauce bubbles, the potatoes are tender when pierced with a knife, and the cheese is golden in spots.
Check a meatball near the center of the dish with a food thermometer. Because this is a casserole containing raw ground beef, aim for 165°F (74°C) in the center of the casserole. The USDA’s safe temperature chart lists 165°F for casseroles. If the topping has browned before the center reaches that temperature, loosely cover the dish with foil and continue baking.
Let the casserole rest for 10 minutes before serving. The sauce will settle slightly, making it easier to lift out portions.
Tips for the Best Results
Cut the potatoes evenly
Even slices make this recipe much easier to time. A mandoline can help, but use its hand guard. A sharp knife works well too. Keep the slices thick enough to stand upright after their brief simmer.
Do not fully cook the potatoes in water
You want to soften them, not boil them until they fall apart. They will finish cooking in the casserole. If a slice breaks when you lift it from the saucepan, use it along the edge or underneath a meatball rather than trying to stand it up.
Keep the meatballs a manageable size
Large meatballs take longer to reach a safe temperature in the middle. Making roughly 15 from the stated amount of beef gives you pieces that fit between the potato rounds and cook more predictably.
Pour the sauce into the gaps
A thick pool of sauce on top can hide the pattern and slow browning. Pour slowly around the ingredients, then use a spoon to move the sauce where it is needed.
Trust the thermometer
Oven temperature, dish depth, meatball size, and the temperature of your ingredients can all affect baking time. Bubbling sauce and browned cheese are useful visual signs, but a thermometer checks the center of the dish.