Salads
This baked macaroni shells and cheese recipe delivers the perfect combination of crispy golden tops and melty, pull-apart cheese centers—every bite is a textural masterpiece. 💛 The secret lies in baking the shells until they're perfectly tender while creating a golden, crackly crust that contrasts beautifully with the creamy cheese filling.
What sets this recipe apart is the foolproof technique for achieving that coveted crispy top without sacrificing the tender pasta underneath. We'll use a blend of sharp cheddar and Gruyère for depth of flavor, while a touch of cream cheese adds richness that keeps the dish velvety smooth.
The best part? It's ready in just 30 minutes, making it ideal for busy weeknights or family dinners.
By the time it emerges from the oven, you'll have a dish that's impossible to resist—golden, bubbling cheese with crispy edges that give way to tender pasta and creamy filling in every bite.
The aroma alone will have everyone gathering around the table, and the first forkful will have them asking for seconds.
Serve this comforting classic with a simple green salad or steamed vegetables for a complete meal. The crispy cheese shells hold up beautifully, making this dish perfect for sharing or meal prepping. Let's get started on creating this crowd-pleasing favorite!
Ingredients for baked macaroni shells and cheese
These 13 ingredients transform into crispy-topped, cheesy perfection—every bite is a textural dream!
| Ingredient | Amount | Notes |
|---|---|---|
| Macaroni Shells 🍝 | 12 oz | Uncooked, medium or large size |
| Sharp Cheddar Cheese 🧀 | 2 cups | Shredded, aged for flavor |
| Gruyère Cheese 🧀 | 1 cup | Shredded, for nutty depth |
| Cream Cheese 🧈 | 4 oz | Full-fat for creaminess |
| Heavy Cream 🥛 | ½ cup | Whole milk for richness |
| Butter 🧈 | 2 tbsp | Unsalted, melted |
| Garlic Cloves 🧄 | 2 cloves | Minced for subtle aroma |
| All-Purpose Flour 🌾 | 2 tbsp | For breadcrumb topping |
| Panko Breadcrumbs 🍞 | ¼ cup | For extra crunch |
| Salt 🧂 | ½ tsp | Kosher or sea salt |
| Black Pepper 🌶️ | ¼ tsp | Freshly ground |
| Dried Parsley 🌿 | 1 tsp | For fresh finish |
| Milk 🥛 | ¼ cup | For baking liquid |
The cheeses are the stars here—sharp cheddar for tang and Gruyère for nutty richness. Grab pre-shredded if you're short on time, but freshly grated melts better. Trader Joe's has the best Gruyère at a great price, or check the specialty cheese section at Whole Foods. Cream cheese keeps the filling velvety smooth, while the heavy cream adds that signature creamy pull. Don't skip the full-fat versions—they make all the difference in that melty texture. For the macaroni shells, medium or large size works best—they hold the cheese filling perfectly without getting soggy.
No Gruyère? Parmesan or Swiss cheese work in a pinch, though the flavor will be different. Short on cream cheese? Add an extra 0.25 cup of sharp cheddar—it'll still be delicious. For the breadcrumb topping, Panko gives the best crunch, but regular breadcrumbs work too (just toast them first in a dry pan). The garlic adds subtle depth, but if you're sensitive to its flavor, reduce to 1 clove. Pre-shredded cheese? Toast it in the oven for 5 minutes before mixing to remove excess moisture. The dried parsley is just for garnish—skip it if you're out, but trust me, it adds a pop of color and freshness.
This dish reheats beautifully—5 minutes at 350°F brings back that crispy top. Store leftovers in an airtight container for 3-4 days, but honestly, it's even better the next day as the flavors meld. Portion into individual servings before freezing for up to 3 months—just bake straight from frozen, adding 5 extra minutes. The shells stay crispy when stored properly, so don't skip the breadcrumb topping. Serve with a simple salad to cut through the richness—it's the perfect balance!
Why You'll Love This Recipe
- No Boil Required: I swear by this trick—just toss raw shells straight into the baking dish with the cheese sauce. No pot to scrub, no waiting for water to boil. The shells soften perfectly in the oven while everything else melts into golden, bubbly heaven.
- Gruyère Magic: That nutty, slightly sweet Gruyère? It’s the secret weapon here. Paired with sharp cheddar and cream cheese, it turns ordinary mac and cheese into something rich, complex, and downright cheesy—the kind that makes you close your eyes and sigh.
- Lunchbox Hero: Between us, this is my go-to for packed lunches. The shells hold up for days, and the creamy filling stays cohesive (thanks to that heavy cream). Toss in a handful of peas or diced ham, and you’ve got a meal that’s basically a hug in a container.
- Budget Buster: Sharp cheddar’s cheap, Gruyère’s the star, and cream cheese stretches it all into something luxurious. I make this for $8 and feed four people—plus, leftovers reheat like they’re fresh. My wallet and my family thank me every time.
Step-by-step instructions for baked macaroni shells and cheese
Here's how to make these irresistible crispy-topped bites with melty cheese pulls that'll have everyone begging for seconds.
🍳 Step 1: Cook the Macaroni Shells to Perfect Texture
Bring a large pot of water to a rolling boil and add 12 oz macaroni shells. Cook until they're just al dente—about 9-11 minutes—but don't overcook them. You want them to hold their shape but still have a slight bite. Drain well in a colander and give them a quick rinse under cold water to stop the cooking process. This prevents them from becoming mushy when baked later.
Here's the thing—macaroni shells expand when cooked, so don't be surprised if they look bigger than when you started. I like to spread them out on a baking sheet after draining to let any excess water evaporate. This ensures they'll absorb the cheese sauce properly and develop that perfect crispy texture when baked.
👨🍳 Step 2: Make the Ultimate Cheese Sauce
In a large bowl, combine 2 cups sharp cheddar cheese, 1 cup gruyère cheese, 4 oz cream cheese, 0.5 cup heavy cream, 0.25 cup milk, 2 tbsp butter, 2 cloves minced garlic, 0.5 tsp salt, and 0.25 tsp black pepper. Mix until the cream cheese is completely melted and the sauce is smooth—this usually takes about 2-3 minutes of stirring.
This cheese blend is what makes these macaroni shells special. The sharp cheddar gives that classic tangy flavor, while the gruyère adds a rich, nutty depth. The cream cheese keeps everything creamy, and the heavy cream makes it luxuriously smooth. I like to use a hand mixer for this step—it saves time and ensures everything gets fully incorporated without overworking the mixture.
🥘 Step 3: Combine and Bake for Crispy Perfection
Add the cooked macaroni shells to the cheese sauce and toss gently until every shell is fully coated. Spread the mixture evenly into a greased 9x13-inch baking dish. The shells should be snug but not packed too tightly—this allows them to crisp up nicely when baked. Cover the dish with aluminum foil and bake at 350°F for 20 minutes.
Here's where the magic happens: after the initial baking time, remove the foil and switch to broil mode. Watch carefully—you want that gorgeous golden-brown crust to form, but you don't want it to burn. It usually takes about 3-5 minutes under the broiler. The cheese should be bubbling and starting to pull in those delicious strings.
🔥 Step 4: Add the Crunchy Topping
While the macaroni shells are baking, mix together 2 tbsp all-purpose flour, 0.25 cup panko breadcrumbs, and 1 tsp dried parsley in a small bowl. Sprinkle this mixture evenly over the top of the baked macaroni shells just before they finish cooking. The broiler will toast these breadcrumbs, creating that perfect crunchy contrast to the creamy cheese.
Return the dish to the oven under the broiler for another 1-2 minutes until the topping is golden and crispy. You'll know it's perfect when it smells amazing and looks beautifully browned. Let it rest for 5 minutes before serving—this lets the cheese set up just enough to hold its shape when you cut into it.
Pro Tips For Making Baked Macaroni Shells And Cheese
- Boil Shells Firm: Macaroni shells need to be al dente before baking—test one and sink your teeth in. Undercooked shells turn mushy when baked, and overcooked ones collapse like sad clouds. Aim for 2 minutes less than package instructions, then drain well.
- Shred Cheese Coarse: Skip the food processor for sharp cheddar and Gruyère—hand-shredding gives bigger, meltier chunks. The cream cheese blends in smoothly, but those jagged cheddar bits are what make the sauce cling instead of slide off. (Yes, it takes 5 minutes, but it’s worth it.)
- Preheat Oven Hot: Fire up the oven to 375°F before you start—this isn’t a race, and cold pans won’t brown your shells. The first 10 minutes at high heat get those edges golden, while the rest of the time can simmer at a lower temp. Trust me, you’ll regret rushing this.
- Mix Cream Cold: Stir the heavy cream and cream cheese together before adding them to the hot shells—this keeps the sauce from curdling. I learned this the hard way when my first batch turned into a sad, lumpy mess. Cold cream = smooth sauce.
Common mistakes when making perfect results
Overcooking Shells
Cooking macaroni shells until they're mushy is a classic mistake that turns your dish into a sad, soupy mess. I've learned the hard way—9-11 minutes is the sweet spot for al dente shells. Overcooked shells break apart when baked, losing that perfect crispy texture we're aiming for.
After draining, rinse them with cold water immediately to stop the cooking process. This simple step preserves their structure and prevents that dreaded mushy bite. 💛
Skipping the Broil
Many recipes stop at baking, but the broiler is where the magic happens for that golden, crispy top. Without it, you'll end up with a dish that's just... cheesy. After baking for 20 minutes, switch to broil mode for 3-5 minutes.
Keep a close eye—it happens fast! The broiler creates that beautiful caramelization on top while keeping the cheese creamy underneath. Trust me, your dish will thank you.
Cheese Temperature Issues
Using cold cheese straight from the fridge is a recipe for disaster—it won't melt properly and creates lumps in your sauce. Always let your cheeses sit at room temperature for 15-20 minutes before mixing. I like to place them on a cutting board while I prep other ingredients.
This ensures a smooth, creamy sauce that coats every shell perfectly. Room-temperature cheese also melts more evenly, giving you those perfect pull-apart strings we all love.
Uneven Baking
Packing the shells too tightly in your baking dish leads to uneven cooking and a sad, soggy center. Spread them out so they're snug but not crowded—this allows heat to circulate properly and creates that perfect crispy texture.
I use a 9x13-inch baking dish and gently press the shells down just enough to keep them in place. When in doubt, err on the side of slightly less dense packing. This small adjustment makes all the difference in achieving that restaurant-quality texture.
Ignoring the Rest Time
Cutting into your macaroni shells immediately after baking might seem tempting, but resisting those first few minutes is crucial. Letting the dish rest for 5 minutes allows the cheese to set slightly, preventing it from oozing out everywhere when you serve.
This small patience pays off with cleaner slices and better presentation. It's also when the flavors meld together—trust me, your taste buds will notice the difference. ⏰
Wrong Cheese Blend
Using only one type of cheese—like just cheddar—results in a dish that lacks depth and complexity. The combination of sharp cheddar (for tang), Gruyère (for nutty richness), and cream cheese (for creaminess) creates that perfect balance of flavors.
If you're short on time, pre-shredded cheese works, but freshly grated melts more smoothly. Toasting pre-shredded cheese in the oven for 5 minutes before mixing removes excess moisture, which prevents a watery sauce. Don't skip this step—it's a game-changer for texture. 🧀
Nutrition facts
Frequently asked questions
Why do my baked macaroni shells turn out soggy?
Soggy shells usually happen when they're overcooked before baking or the cheese sauce is too wet. Always cook shells to al dente (9-11 minutes) and rinse with cold water to stop cooking. For extra crispiness, spread them on a baking sheet after draining to evaporate excess moisture before mixing with cheese.
Can I make this recipe ahead of time?
This dish actually tastes better the next day as flavors meld. Assemble completely, cover, and refrigerate for up to 2 days. Reheat covered at 350°F for 15-20 minutes, then broil for 2-3 minutes to restore the crispy top. For freezing, portion before baking and freeze for up to 3 months—bake straight from frozen, adding 5 extra minutes.
What's the secret to getting that perfect crispy top?
The broiler is your best friend! After baking for 20 minutes, remove foil and broil for 3-5 minutes until golden. The flour-Panko topping also creates crunch—mix 2 tbsp flour and 0.25 cup Panko before sprinkling on top. For extra insurance, toast the breadcrumbs in a dry pan for 2 minutes before using.
Can I substitute other cheeses?
Yes, but expect flavor changes. For the cheddar, try Monterey Jack (milder) or Colby (creamer). Replace Gruyère with Parmesan (more salty) or Swiss (sweeter). If using pre-shredded cheese, toast it in the oven for 5 minutes before mixing to remove excess moisture. For the cream cheese, ricotta works in a pinch (add 1 tbsp milk to thin).
How do I serve this dish for a crowd?
Double the recipe and use two 9x13-inch baking dishes. For easy serving, transfer to a platter and cut into squares. Pair with:
- Crisp green salad with vinaigrette
- Steamed broccoli with lemon
- Garlic bread or dinner rolls
