Cheesy Zucchini and Ground Beef Casserole

I remember the exact moment I fell in love with this dish. It was a Tuesday night in late July, the kind where the kitchen was already warm from the day, and I had a pile of zucchini from the farmer’s market staring me down. My kids were asking what was for dinner, my husband was working late, and I honestly didn’t have the energy for anything complicated. But I had ground beef thawing, some cheese in the fridge, and a sudden craving for something hearty and comforting.
That’s when I threw together what would become my go-to cheesy zucchini and ground beef casserole—and I’m so glad I did. This isn’t a fancy dish. It’s honest food. It’s the kind of meal that comes together in about thirty minutes of active work, bakes while you fold laundry or help with homework, and somehow makes your whole house smell like home.
What I love most about this casserole is how it works for real life. It’s naturally lower in carbs if that matters to you, it stretches a modest amount of ground beef into something that feeds a family of four with leftovers, and it’s flexible enough that you can swap in whatever vegetables or cheese you have on hand. My neighbor makes hers with Italian sausage. My sister adds spinach. I’ve made it with mozzarella, cheddar, and even a mix of both.
If you’re looking for a weeknight dinner that doesn’t feel like a compromise, or you’re tired of the same old casserole rotation, this cheesy zucchini and ground beef casserole is about to become your new favorite. It’s comfort food that actually nourishes you, and it tastes like you spent way more time on it than you actually did.
Follow me on DianaCookingE on Pinterest for more easy weeknight dinners and casserole ideas that your family will actually ask for seconds on.
Why You’ll Love This Recipe
This casserole hits all the marks for a recipe I actually want to make on a busy weeknight. It’s fast—we’re talking under an hour from start to finish. There’s minimal cleanup because everything happens in one dish. And honestly, the flavor is just right: savory, cheesy, and deeply satisfying without being heavy.
The zucchini becomes tender and almost sweet as it bakes, while the ground beef stays flavorful and rich. The cheese melts into every layer, creating pockets of creaminess that make each bite feel indulgent. But here’s the thing I really appreciate: it’s not pretentious. It doesn’t need fancy ingredients or special techniques. Just good basics, combined thoughtfully.
I also love that this works for different eating styles. It’s naturally gluten-free if you skip breadcrumbs on top. It’s low-carb friendly. It’s affordable. And it makes enough that you’ll have lunch sorted for the next day, which honestly feels like a small miracle on a Wednesday.
Ingredients
- 2 tablespoons olive oil
- 1 pound ground beef (80/20 blend works best)
- 1 medium onion, diced
- 4 cloves garlic, minced
- 1 can (14.5 ounces) diced tomatoes, with juice
- 2 tablespoons tomato paste
- 1 teaspoon dried Italian seasoning
- 1/2 teaspoon salt
- 1/4 teaspoon black pepper
- 4 medium zucchini, sliced into 1/4-inch rounds
- 2 cups shredded mozzarella cheese, divided
- 1/2 cup shredded Parmesan cheese
- 1/2 cup sour cream or Greek yogurt
- 1/4 cup panko breadcrumbs (optional, for topping)
- 2 tablespoons butter, melted (if using breadcrumb topping)
Diana’s Tip: I use a 9×13-inch baking dish for this, and I always slice my zucchini on the thicker side—about 1/4 inch. Thinner slices can get mushy, and you’ll lose that lovely texture contrast between the zucchini and the creamy sauce.
Optional Add-Ins and Variations
One of my favorite things about this recipe is how adaptable it is. If you have fresh spinach, a handful mixed into the meat sauce adds color and nutrition without changing the flavor profile. Mushrooms are wonderful here too—sauté them with the onions and garlic for an earthy depth.
Some people love adding a pinch of red pepper flakes for heat, or a splash of balsamic vinegar for complexity. I’ve done both, and they’re subtle but noticeable improvements. You could also mix in some fresh basil at the very end of baking, though I tend to save that for summer when I have it growing on my porch.
Step-by-Step Method
Step 1: Brown the Beef
Heat your olive oil in a large skillet over medium-high heat. Once it’s shimmering, add the ground beef and break it apart with a wooden spoon as it cooks. You want it nicely browned with some color on the edges—this takes about 5 to 7 minutes. Don’t rush this part. The browning is where the flavor lives.
Diana’s Tip: I always use an 80/20 ground beef blend. It has enough fat to stay flavorful but isn’t greasy. If you use leaner beef, your casserole might feel a bit dry.
Step 2: Build the Sauce
Once the beef is cooked through, add your diced onion and cook for about 2 minutes until it softens slightly. Then add the garlic and cook for another minute—you’ll smell it immediately, and that’s exactly when you know it’s ready. Pour in the diced tomatoes with their juice, tomato paste, Italian seasoning, salt, and pepper. Stir everything together and let it simmer for about 5 minutes. The sauce should smell rich and tomatoey.
What I Messed Up At First: I used to skip the tomato paste because I thought it was an extra step. But it adds this concentrated umami that makes the whole dish taste more intentional. Now I never skip it.
Step 3: Prepare Your Baking Dish
While your sauce is simmering, preheat your oven to 375°F and lightly grease a 9×13-inch baking dish. In a small bowl, mix together 1 1/2 cups of the mozzarella, the Parmesan, and the sour cream. This becomes your creamy layer, and it’s what makes this casserole feel so luxurious.
Step 4: Layer Your Casserole
Spread a thin layer of the meat sauce on the bottom of your prepared baking dish—just enough to coat. Then arrange a layer of zucchini slices, overlapping them slightly. Spoon about a third of the remaining meat sauce over the zucchini, then dollop a third of your cheese mixture over that. Repeat this layering two more times: zucchini, sauce, cheese mixture. You should end with a cheese layer on top.
Diana’s Tip: Don’t worry about being perfect with the layers. This isn’t a lasagna competition. Just make sure the zucchini and sauce are distributed reasonably evenly, and you’ll be fine.
Step 5: Add the Topping (Optional)
If you want a crispy topping, toss your panko breadcrumbs with melted butter and sprinkle them over the cheese. This adds a nice textural contrast, but it’s completely optional. I do it about half the time, depending on my mood.
Step 6: Bake
Cover your casserole with foil and bake for 30 minutes. Then remove the foil and bake for another 10 to 15 minutes until the cheese is bubbling at the edges and the top is golden. The total time is usually around 40 to 45 minutes. You’ll know it’s ready when you can see the sauce bubbling around the sides and the cheese is melted and slightly browned in spots.
Let it rest for about 5 minutes before serving. I know it’s hard to wait, but this helps everything set so it holds together nicely when you scoop it out.
Common Mistakes to Avoid
Slicing the zucchini too thin. This is the number one thing I see people do. Thin slices turn into mush. Aim for about 1/4 inch, and you’ll have a much better texture.
Skipping the salt and pepper in the meat sauce. These two things are doing so much work. Don’t undersalt because you think you’ll add more later. Season properly as you go.
Not letting the casserole rest before serving. I get it—it smells amazing and you want to dig in. But those 5 minutes make a real difference in how the casserole holds together.
Overcrowding the layers. More sauce doesn’t mean better. If your layers are too wet, the zucchini won’t cook properly and everything will be soupy. Stick to the proportions in the recipe.
My Tested Substitutions
Ground turkey or Italian sausage: Both work beautifully here. Sausage adds a bit more seasoning and richness, while turkey is leaner. Adjust your cooking time slightly if using sausage, as it can take a few minutes longer to brown.
Ricotta instead of sour cream: If you don’t have sour cream, ricotta mixed with a splash of milk creates a similar creamy layer. It’s actually what I grew up eating in my Italian grandmother’s version.
Different cheeses: I’ve made this with sharp cheddar, fontina, and even a mix of three cheeses. Mozzarella is my default because it melts so smoothly, but don’t feel locked into it.
Zucchini alternatives: Summer squash works identically. Eggplant is lovely too, though it’s slightly more delicate. Honestly, I’ve even made this with thinly sliced potatoes in winter, and it’s a completely different but equally delicious dish.
[INTERNAL LINK: Easy weeknight casserole recipes]
How to Customize
If your family loves vegetables, layer in some thinly sliced bell peppers or add fresh spinach to the meat sauce. If someone at your table doesn’t like zucchini, you can make a smaller casserole with just the meat and cheese layers—it won’t be quite the same dish, but it’ll still be good.
For a spicier version, add red pepper flakes to the meat sauce or use a spicy Italian sausage instead of ground beef. For a Mediterranean twist, add some fresh basil and a sprinkle of oregano.
Serving Ideas
I serve this with a simple green salad dressed with lemon vinaigrette to cut through the richness. Garlic bread is also a no-brainer if you’re in the mood for carbs. Some nights I pair it with roasted broccoli or a side of crusty bread for soaking up any extra sauce.
It’s also great on its own if you’re eating lower-carb. The casserole is satisfying enough that you don’t really need anything else, though a side of something fresh always feels nice.
Meal Prep and Storage
This casserole keeps beautifully in the refrigerator for up to 4 days in an airtight container. I actually think it tastes better on day two or three because the flavors have had time to meld together.
You can also freeze it before baking. Assemble everything in a freezer-safe baking dish, cover tightly with plastic wrap and foil, and freeze for up to 3 months. Bake directly from frozen, adding about 15 to 20 minutes to the cooking time. Or thaw it overnight in the fridge and bake as directed.
To reheat, cover with foil and warm in a 350°F oven for about 15 to 20 minutes until heated through. You can also reheat individual portions in the microwave, though the oven method keeps the texture nicer.
Nutritional Breakdown
Per serving (based on 6 servings), this casserole contains approximately 320 calories, 24 grams of protein, 8 grams of carbohydrates, 22 grams of fat, and 2 grams of fiber. The exact numbers will vary depending on your specific ingredients and how generously you portion, but this gives you a good ballpark.
The protein from the beef and cheese makes this filling, while the zucchini adds volume and nutrients without a lot of extra calories. It’s a pretty balanced meal, especially if you pair it with a vegetable side.
Frequently Asked Questions
Can I make this casserole ahead of time?
Absolutely. You can assemble it completely in the morning, cover it, and refrigerate it until you’re ready to bake. Just add about 10 minutes to your baking time since it’ll go into the oven cold. You can also freeze it unbaked for up to 3 months.
What if my casserole turns out watery?
Zucchini releases moisture as it cooks, which is totally normal. If you end up with excess liquid, it usually means either your zucchini slices were too thin or you used too much sauce. For next time, stick to 1/4-inch slices and follow the proportions in the recipe. If it happens this time, just drain off the excess liquid before serving.
Can I use fresh zucchini from my garden?
Yes, but be aware that garden zucchini can be larger and sometimes has more water content. Slice it a bit thicker than usual, and don’t hesitate to pat the slices dry with a paper towel before layering.
Is this recipe gluten-free?
Yes, as long as you skip the breadcrumb topping or use gluten-free breadcrumbs. Everything else is naturally gluten-free.
Can I double this recipe?
Definitely. Use a 9×13-inch dish and a 8×8-inch dish, or split it between two 9×13-inch dishes. The baking time should stay roughly the same since the casseroles won’t be thicker, just take up more space.
Final Thoughts
This cheesy zucchini and ground beef casserole has become one of those recipes I make on autopilot. It’s reliable, it’s delicious, and it makes my family happy. There’s something really satisfying about pulling a hot, bubbling casserole out of the oven knowing that dinner is handled.
I hope you give this a try and that it becomes one of your go-to weeknight meals too. Feel free to make it your own, play with the ingredients, and don’t stress if it’s not perfect. Some of the best meals come from just throwing together what you have and trusting the process.
If you do make this, I’d love to hear how it goes. Drop by Diana Recipes anytime and let me know what you thought, or tell me about your favorite variation.
—

Cheesy Zucchini and Ground Beef Casserole
Ingredients
Method
- Heat olive oil in a large skillet over medium-high heat. Add ground beef and break apart with a wooden spoon as it cooks for 5 to 7 minutes until browned.
- Add diced onion and cook for 2 minutes until softened. Add garlic and cook for 1 minute until fragrant. Stir in diced tomatoes with juice, tomato paste, Italian seasoning, salt, and pepper. Simmer for 5 minutes.
- Preheat oven to 375°F and lightly grease a 9x13-inch baking dish. In a small bowl, mix together 1 1/2 cups mozzarella, Parmesan, and sour cream.
- Spread a thin layer of meat sauce on the bottom of the baking dish. Layer zucchini slices, then sauce, then cheese mixture. Repeat layering two more times, ending with cheese mixture on top.
- If using breadcrumb topping, toss panko with melted butter and sprinkle over the cheese layer.
- Cover casserole with foil and bake for 30 minutes. Remove foil and bake for 10 to 15 minutes until cheese is bubbling at edges and top is golden.
- Let rest for 5 minutes before serving.