Cheesy Baked Meatball Casserole
There are some dinners that just feel like a warm hug in a dish, and this Baked Meatball Casserole is precisely that. Imagine tender, juicy meatballs, seasoned with herbs and garlic, swimming in a rich and savoury tomato sauce, all tucked under a blanket of gloriously melty mozzarella and sharp Parmesan cheese. It’s the kind of meal that fills the house with the most incredible aroma as it bakes, drawing everyone to the kitchen. My kids absolutely devour this every time I make it, and seeing their clean plates is one of the best feelings.
This isn’t just a dish of meatballs plonked in sauce; it’s a cohesive, layered casserole where every element works together. The meatballs are browned first to develop a deep, savoury crust, a step that adds a huge amount of flavour to the final dish. They then finish cooking gently in the sauce, becoming incredibly moist and soaking up all that tomatoey goodness. It’s a method that ensures every single bite is packed with flavour.
This baked casserole works beautifully for a hearty weeknight dinner when you need something substantial and satisfying. It’s also special enough for a relaxed weekend meal with family or friends. We often make this on a Sunday, serving it with a big bowl of pasta or some crusty bread for mopping up every last bit of that delicious sauce. It’s a recipe that always gets compliments and has become a true staple in my kitchen.
Recipe Overview
This Baked Meatball Casserole recipe focuses on building layers of flavour, from the perfectly seasoned meatballs to the robust tomato sauce they bake in. Expect juicy, tender meatballs with a savoury crust, a rich sauce infused with garlic and herbs, and a beautifully browned, cheesy topping. I’ve tested this with both pork and beef mince, and I find the combination gives the best texture and taste.
- Prep Time: 25 minutes
- Cook Time: 35 minutes
- Total Time: 1 hour
- Servings: 6 people
- Difficulty: Medium
Why You’ll Love This Baked Meatball Casserole
- Genuine Flavour: We build flavour at every step. The combination of beef and pork mince creates a succulent meatball, while browning them first adds a deep, caramelised note that you just can’t get from baking alone. The sauce is simple but rich with garlic, oregano, and sweet basil.
- Ready in an Hour: From start to finish, this satisfying meal comes together in about 60 minutes, making it completely achievable for a weeknight supper.
- Flexible Recipe: You can easily adapt this to your liking. Try using all-beef or even turkey mince. Feel free to stir a few handfuls of fresh spinach into the sauce or add some diced peppers for extra vegetables. Different cheeses like provolone or a mature cheddar also work well.
- Great for Family Dinners: This is a wonderful dish for feeding the family. It’s hearty, satisfying, and has flavours that appeal to both adults and children. It’s a bit like my popular Cheeseburger Lasagna Recipe in that it always makes everyone at the table happy.
- Family Tested: This recipe has been made countless times in my kitchen and it never fails. It’s one of those reliable dishes I turn to when I want to guarantee empty plates and happy faces all around.
Ingredients You’ll Need
For the best results, I recommend using good quality ingredients, especially the tinned tomatoes and the meat. I often use Mutti Polpa finely chopped tomatoes as I find they have a natural sweetness and thick texture that makes for a fantastic sauce base without needing much sugar or long simmering times.
- For the Meatballs:
- 450g beef mince (15-20% fat)
- 450g pork mince
- 120g fresh breadcrumbs (from stale bread)
- 80ml whole milk
- 1 large egg, lightly beaten
- 60g Parmesan cheese, finely grated, plus extra for topping
- 2 cloves garlic, minced
- 1 tsp dried oregano
- 1/2 tsp salt
- 1/4 tsp black pepper
- 2 tbsp olive oil, for frying
- For the Sauce & Topping:
- 1 tbsp olive oil
- 1 small onion, finely diced
- 2 cloves garlic, thinly sliced
- 2 x 400g tins of chopped tomatoes
- 1 tsp dried oregano
- 1 tbsp fresh basil, chopped (or 1 tsp dried)
- 1/2 tsp sugar (optional, to balance acidity)
- Salt and freshly ground black pepper, to taste
- 200g mozzarella cheese, torn or grated
Sophia’s Tip: Don’t be tempted to use dried, pre-packaged breadcrumbs. Whizzing up a couple of slices of stale bread in a food processor gives you a much softer, fluffier crumb. This helps absorb the milk and makes the meatballs incredibly tender and light.
How to Make Baked Meatball Casserole
The process is straightforward. We’ll start by making and browning the meatballs, then create a quick sauce in the same pan to capture all those lovely browned bits, and finally, we’ll bake it all together under a blanket of cheese.
- Prepare the Meatball Mixture: In a small bowl, combine the fresh breadcrumbs and milk. Let them soak for 5-10 minutes until the milk is absorbed. In a separate large bowl, combine the beef mince, pork mince, grated Parmesan, minced garlic, oregano, salt, pepper, and the beaten egg. Add the soaked breadcrumb mixture.
- Mix and Shape: Gently mix everything together with your hands until just combined. Be careful not to overwork the mixture, as this can make the meatballs tough. Shape the mixture into golf ball-sized meatballs (you should get around 20-24).
- Brown the Meatballs: Heat 2 tablespoons of olive oil in a large, oven-safe frying pan or shallow casserole dish over a medium-high heat. What works best for me is browning the meatballs in two batches to avoid overcrowding the pan. Fry for 5-7 minutes, turning occasionally, until they have a deep brown crust on all sides. They don’t need to be cooked through at this stage. Remove the browned meatballs and set them aside on a plate.
- Start the Sauce: Reduce the heat to medium. Add the remaining 1 tablespoon of olive oil to the same pan. Add the diced onion and cook for 4-5 minutes until softened and translucent. Add the sliced garlic and cook for another minute until fragrant.
- Simmer the Sauce: Pour in the tinned tomatoes. Use a wooden spoon to scrape up any browned bits from the bottom of the pan – this is where so much flavour lives! Stir in the oregano, basil, sugar (if using), and season with salt and pepper. Bring the sauce to a gentle simmer.
- Assemble the Casserole: Return the browned meatballs to the pan, nestling them into the sauce. Let it all simmer gently for about 5 minutes so the flavours can start to mingle.
- Bake the Casserole: Preheat your oven to 180°C (160°C fan). Scatter the mozzarella and a little extra Parmesan over the top of the meatballs and sauce.
- Final Bake and Rest: Transfer the dish to the preheated oven and bake for 20-25 minutes, or until the sauce is bubbling and the cheese is melted and turning golden brown in spots. Let the casserole rest for 5-10 minutes before serving. This allows it to set slightly and makes it easier to serve.
Tips From My Kitchen
- Temperature Control: For peace of mind, ensure the meatballs are cooked through by checking with a meat thermometer. According to the Food Standards Agency, mince should reach an internal temperature of 70°C for at least 2 minutes. The final bake in the oven will ensure this.
- The Secret Step: I used to struggle with dry meatballs until I discovered this technique. Soaking the breadcrumbs in milk before adding them to the meat is a game-changer. I learned that this simple step adds moisture and results in an unbelievably tender and light meatball. It’s non-negotiable for me now.
- Make-Ahead: You can prepare the meatballs and the sauce a day in advance. Store them separately in airtight containers in the fridge. When you’re ready to eat, simply assemble the casserole as per step 6 and bake. This makes it a great option for entertaining.
- Storage: Leftovers can be stored in an airtight container in the fridge for up to 3 days. This meatball casserole also freezes wonderfully. Let it cool completely, then freeze for up to 3 months. Thaw overnight in the fridge before reheating in the oven.
Equipment You’ll Need
- Large oven-safe frying pan or shallow casserole dish (approx. 25-30cm)
- Large mixing bowl
- Small bowl for soaking breadcrumbs
- Tongs or a spatula
- Meat thermometer (recommended)
Common Mistakes to Avoid
- Overcrowding the pan: When browning the meatballs, do it in batches. If you put too many in at once, they will steam instead of fry, and you won’t get that delicious brown crust which is crucial for flavour.
- Overworking the meat: Mix the meatball ingredients until they are just combined. Overmixing develops the gluten in the meat and can lead to tough, dense meatballs instead of light and tender ones.
- Skipping the rest time: Letting the baked casserole rest for 5-10 minutes before serving is important. It allows the molten cheese and bubbling sauce to settle, making it easier to serve and ensuring the casserole holds its shape.
What to Serve With This Baked Meatball Casserole
This is a wonderfully versatile dish that pairs well with many sides. My personal favourites are chosen to complement the rich sauce and hearty meatballs.
- Crusty Garlic Bread: An absolute must for mopping up every last drop of the flavourful tomato sauce.
- Simple Green Salad: A crisp salad with a sharp lemon vinaigrette provides a fresh, acidic contrast that cuts through the richness of the cheese and meatballs.
- Creamy Polenta or Pasta: Serve the casserole over a bed of soft polenta or your favourite pasta shape, like rigatoni or pappardelle, to turn it into an even more substantial meal. It’s a different but equally satisfying option to other family favourites like my Bacon Brown Sugar Chicken Tenders.
- Dessert: After such a savoury meal, something small and sweet like these simple Biscoff Truffles would be a lovely finish.
Frequently Asked Questions

Baked Meatball Casserole
Ingredients
Method
- Prepare the Meatball Mixture: In a small bowl, combine the fresh breadcrumbs and milk. Let them soak for 5-10 minutes until the milk is absorbed. In a separate large bowl, combine the beef mince, pork mince, grated Parmesan, minced garlic, oregano, salt, pepper, and the beaten egg. Add the soaked breadcrumb mixture.
- Mix and Shape: Gently mix everything together with your hands until just combined. Be careful not to overwork the mixture, as this can make the meatballs tough. Shape the mixture into golf ball-sized meatballs (you should get around 20-24).
- Brown the Meatballs: Heat 2 tablespoons of olive oil in a large, oven-safe frying pan or shallow casserole dish over a medium-high heat. What works best for me is browning the meatballs in two batches to avoid overcrowding the pan. Fry for 5-7 minutes, turning occasionally, until they have a deep brown crust on all sides. They don't need to be cooked through at this stage. Remove the browned meatballs and set them aside on a plate.
- Start the Sauce: Reduce the heat to medium. Add the remaining 1 tablespoon of olive oil to the same pan. Add the diced onion and cook for 4-5 minutes until softened and translucent. Add the sliced garlic and cook for another minute until fragrant.
- Simmer the Sauce: Pour in the tinned tomatoes. Use a wooden spoon to scrape up any browned bits from the bottom of the pan – this is where so much flavour lives! Stir in the oregano, basil, sugar (if using), and season with salt and pepper. Bring the sauce to a gentle simmer.
- Assemble the Casserole: Return the browned meatballs to the pan, nestling them into the sauce. Let it all simmer gently for about 5 minutes so the flavours can start to mingle.
- Bake the Casserole: Preheat your oven to 180°C (160°C fan). Scatter the mozzarella and a little extra Parmesan over the top of the meatballs and sauce.
- Final Bake and Rest: Transfer the dish to the preheated oven and bake for 20-25 minutes, or until the sauce is bubbling and the cheese is melted and turning golden brown in spots. Let the casserole rest for 5-10 minutes before serving. This allows it to set slightly and makes it easier to serve.
Notes
I truly hope you enjoy making this Baked Meatball Casserole. It’s a dish filled with warmth and flavour that has brought so much joy to my family table, and I hope it does the same for yours. If you try it, please let me know how it turned out in the comments below. I love hearing from you! From my kitchen to yours, Sophia.
