The first time I made this casserole, it was born from necessity rather than inspiration. A Tuesday evening stretched ahead with nothing but ground beef thawing on the counter and a bag of potatoes threatening to sprout in my pantry. My grandmother’s voice echoed in my memory: « The best meals come from what you have, not what you lack. » As I began layering tender potato slices with seasoned beef, something beautiful emerged from that simple foundation.
The kitchen filled with the rich aroma of browning meat mingling with herbs, while steam rose from perfectly arranged potato layers. Each bite that first evening told a story of transformation – humble ingredients becoming something greater than their individual parts. The crispy golden top gave way to creamy, tender layers beneath, the beef providing hearty satisfaction while the potatoes offered comfort in their familiar embrace. This dish has since become my go-to when I need to feed a crowd or simply want to fill my home with the kind of warmth that only comes from genuine comfort food.
What makes this ground beef potato casserole truly special is its remarkable ability to transform basic pantry staples into a deeply satisfying meal that feels like a warm hug from the inside out. The magic lies in the layering technique, where thinly sliced potatoes create distinct yet harmonious levels, each one absorbing the savory essence of the seasoned ground beef while maintaining its own tender integrity. This isn’t just a casserole – it’s a masterclass in how simple ingredients, when treated with care and patience, can create something extraordinary that brings families together around the dinner table.
Table of Contents
Ingredients
For the Beef Layer:
- 2 pounds ground beef (80/20 blend)
- 1 large yellow onion, diced
- 3 cloves garlic, minced
- 2 teaspoons dried thyme
- 1 teaspoon smoked paprika
- 1 teaspoon kosher salt
- 1/2 teaspoon freshly ground black pepper
- 2 tablespoons tomato paste
- 1/2 cup beef broth
For the Potato Layers:
- 4 pounds Yukon Gold potatoes
- 2 cups heavy cream
- 1 cup whole milk
- 2 teaspoons kosher salt
- 1/4 teaspoon white pepper
- 3 tablespoons fresh chives, chopped
For Assembly:
- 2 cups sharp cheddar cheese, grated
- 1/2 cup Parmesan cheese, freshly grated
- 2 tablespoons butter, cut into small pieces

Instructions
Begin by preheating your oven to 375°F and generously buttering a 9×13-inch baking dish. This initial step sets the foundation for even cooking and prevents any unwanted sticking later. The butter will also contribute to that coveted golden crust we’re aiming for.
Start with the potatoes, as they require the most preparation time. Peel each Yukon Gold carefully, appreciating their naturally creamy texture that makes them perfect for layered dishes. Using a sharp knife or mandoline slicer, cut them into uniform slices about 1/8-inch thick. Consistency here is crucial – uneven slices mean uneven cooking, and we want every bite to be perfectly tender. As you slice, place them in a large bowl of cold water to prevent browning and remove excess starch.
While the potatoes soak, turn your attention to the beef mixture. Heat a large skillet over medium-high heat and add the ground beef, breaking it apart with a wooden spoon. Listen for that satisfying sizzle as the meat hits the pan – this is where flavor begins to develop. Cook until the beef is thoroughly browned, about 8-10 minutes, stirring occasionally to ensure even browning. The key is achieving a good caramelization without overcooking.
Add the diced onion to the beef and continue cooking until the onion becomes translucent and fragrant, roughly 5 minutes. The onion will release its natural sweetness, creating a beautiful base layer of flavor. Stir in the minced garlic, thyme, smoked paprika, salt, and pepper, cooking for another minute until the spices become aromatic and bloom their essential oils into the mixture.
Push the beef mixture to one side of the skillet and add the tomato paste to the empty space. Let it cook undisturbed for about a minute – this technique, called blooming, intensifies the tomato flavor and removes any raw taste. Stir the paste into the beef mixture, then pour in the beef broth, scraping up any browned bits from the bottom of the pan. These fond particles are pure flavor gold. Simmer for 3-4 minutes until the liquid reduces slightly, then remove from heat.
Drain your potatoes thoroughly and pat them dry with clean kitchen towels. In a large measuring cup, whisk together the heavy cream, milk, salt, and white pepper. This creamy mixture will bind our layers together while adding richness and ensuring the potatoes cook evenly.
Now comes the meditative process of assembly. Layer half of the sliced potatoes in your prepared baking dish, overlapping them slightly like fallen dominoes. Each slice should overlap its neighbor by about half, creating a beautiful shingle pattern. Pour half of the cream mixture over these potatoes, watching as it seeps between the layers, carrying seasoning to every surface.
Spread the entire beef mixture evenly over the first potato layer, using a spoon to distribute it into every corner. The meat should form a complete, even layer that will become our flavor centerpiece. Sprinkle half of the cheddar cheese over the beef, creating pockets of melted richness throughout the casserole.
Arrange the remaining potato slices over the cheese, maintaining that same overlapping pattern. Pour the remaining cream mixture over the top layer, gently pressing down with your hands to ensure the liquid reaches every crevice. The potatoes should be just barely covered – if they peek through slightly, that’s perfectly fine.
Cover tightly with aluminum foil and slide into your preheated oven. Bake for 45 minutes, during which time the cream will bubble gently and the potatoes will begin their transformation from firm slices to tender layers. Remove the foil and sprinkle the remaining cheddar and all of the Parmesan cheese across the surface. Dot with small pieces of butter for extra richness and browning.
Return to the oven uncovered for another 25-30 minutes, until the top is golden brown and bubbly, and a knife inserted in the center slides through the potatoes with no resistance. The surface should be beautifully caramelized with patches of deep golden cheese creating an irresistible crust.
Allow the casserole to rest for 10-15 minutes before serving. This resting period is crucial – it allows the layers to set properly and makes slicing much cleaner. Garnish with freshly chopped chives for a pop of color and mild onion flavor that brightens the rich dish.
Chef’s Notes
This casserole improves with time and reheats beautifully, making it perfect for meal prep or feeding a crowd. Store covered in the refrigerator for up to four days. For best results when reheating, cover with foil and warm in a 350°F oven until heated through. You can assemble this dish completely up to 24 hours in advance – just cover and refrigerate, then add an extra 10-15 minutes to the covered baking time. For a lighter version, substitute half-and-half for the heavy cream, though the texture will be slightly less luxurious.
Serves: 8-10 people
Total Time: 1 hour 45 minutes (30 minutes prep, 1 hour 15 minutes cooking)