Spinach Macaroni and Cheese
There’s comfort food, and then there’s elevated comfort food. This Spinach Macaroni and Cheese takes the classic, creamy macaroni-and-cheese you grew up loving and gives it a bright, leafy lift with fresh spinach and a trio of flavorful cheeses. It’s cozy, rich, and surprisingly fresh—perfect for weeknight dinners, potlucks, or when you want something a little more interesting than boxed mac and cheese.
The texture here is everything: silky béchamel made with whole milk and 2% milk, shredded sharp white cheddar for that classic tang, smoked gouda for a subtle smoky warmth, and crumbled goat cheese for a tangy finish that cuts through the creaminess. Fresh spinach is thinly sliced and stirred in until just wilted so it keeps color and a tender bite. And elbow macaroni holds that sauce beautifully, each piece coated in cheesy goodness.
Why you’ll love this version

- Balanced flavors—sharp, smoky, and tangy cheeses create layers of taste.
- Freshness from spinach brightens the dish and adds a pop of color.
- A creamy sauce that’s made from scratch—no boxed mixes here.
- Easy to follow steps that deliver a restaurant-style result at home.
Ingredients
- 3 tablespoons unsalted butter
- ½ cup finely minced sweet onion
- ⅓ cup all purpose flour
- 2 cups whole milk
- 2 cups 2% milk
- kosher salt and freshly ground black pepper, to taste
- 4 cups (4.5 ounces) fresh spinach leaves, cut into ½ inch strips
- 1 cup shredded sharp white cheddar cheese
- ⅔ cup shredded smoked gouda
- ⅓ cup crumbled goat cheese
- ¾ pound elbow macaroni, cooked according to package instructions
Equipment
- Large pot for boiling pasta
- Large skillet or medium saucepan for sauce
- Wooden spoon or silicone spatula
- Fine mesh strainer or colander
- Measuring cups and spoons
- Chef’s knife and cutting board
Prep tips

- Shred your cheeses ahead of time and keep them chilled until ready to use—pre-shredded cheese can contain anti-caking agents that alter melting, so freshly shredded is best.
- Cut the spinach into half-inch strips and measure out your amounts before you start to make the cook time smooth and uninterrupted.
- Bring a large pot of salted water to a rolling boil so the pasta cooks evenly and doesn’t stick together.
Step-by-step Instructions

Follow these clear steps to make the creamiest, most flavorful Spinach Macaroni and Cheese:
- Cook the pasta: Bring a large pot of water to a rolling boil. Salt it generously, then add ¾ pound elbow macaroni. Cook according to the package instructions until the pasta is just al dente—firm to the bite. Stir occasionally to prevent sticking. Once done, drain the pasta in a colander and set it aside. Reserve a small cup of pasta cooking water in case you need to thin the sauce later.
- Sauté the onion: While the pasta cooks, melt 3 tablespoons unsalted butter in a large skillet or medium saucepan over medium heat. Add ½ cup finely minced sweet onion and cook, stirring occasionally, until the onion is soft and translucent, about 4 to 6 minutes. Do not let the onion brown; you want it sweet and tender.
- Make the roux: Reduce the heat to medium-low. Sprinkle ⅓ cup all purpose flour over the softened onion and whisk continuously for about 1 to 2 minutes. The flour should cook slightly but not brown—this removes the raw flour taste and helps thicken the sauce.
- Add the milk: Gradually whisk in 2 cups whole milk and then 2 cups 2% milk a little at a time. Keep whisking to combine the roux and milk into a smooth mixture with no lumps. Increase the heat to medium and continue to cook, whisking frequently, until the mixture thickens and begins to bubble gently. This should take about 5 to 7 minutes. The sauce should coat the back of a spoon.
- Season the béchamel: Season the sauce with kosher salt and freshly ground black pepper to taste. Start with a small pinch of salt and a few grinds of pepper; you can adjust later once the cheeses are added. Remember the cheeses will contribute saltiness, so err on the side of light seasoning now.
- Add the spinach: Stir in 4 cups (4.5 ounces) fresh spinach leaves that have been cut into ½ inch strips. Cook for 1 to 2 minutes, stirring, until the spinach wilts and becomes tender. The bright green color should remain vivid—don’t overcook.
- Melt in the cheeses: Lower the heat to low. Add 1 cup shredded sharp white cheddar cheese, ⅔ cup shredded smoked gouda, and ⅓ cup crumbled goat cheese to the sauce. Stir gently and continuously until all cheeses are melted and the sauce is smooth and velvety. If the sauce seems too thick, add a splash of the reserved pasta water to reach your desired consistency. Taste and adjust the seasoning with additional kosher salt and black pepper if needed.
- Combine pasta and sauce: Add the drained elbow macaroni to the skillet with the cheese sauce. Toss gently with a wooden spoon or silicone spatula until every piece of pasta is evenly coated with the cheesy, spinach-studded sauce. Heat together for 1 to 2 minutes so the pasta absorbs some of the sauce and everything is warm throughout.
- Finish and serve: Remove the skillet from the heat. Let the Spinach Macaroni and Cheese sit for a minute so the sauce settles. Serve immediately, scooping hearty portions onto plates or into bowls. For an optional finishing touch, add an extra sprinkle of shredded cheddar or a few crumbles of goat cheese on top.
Serving suggestions
- Serve with a crisp green salad and a vinaigrette to cut the richness.
- Add oven-roasted cherry tomatoes on the side for a sweet, juicy contrast.
- Pair with garlic-roasted broccoli or green beans for extra veg and texture.
- Top with toasted breadcrumbs or crushed crackers for a crunchy topping—toast in a little butter until golden and sprinkle right before serving.
Make-ahead and storage
This dish reheats nicely. Store any leftovers in an airtight container in the refrigerator for up to 3 days. Reheat gently in a saucepan over low heat, adding a splash of milk to loosen the sauce and keep it creamy. You can also reheat single portions in the microwave in 30-second bursts, stirring between intervals.
Notes and variations
- Cheese swaps: If you’d like a milder flavor, swap the sharp cheddar for mild cheddar. For a creamier mouthfeel, add a small handful of grated Parmesan. Keep the total cheese quantities the same.
- Greens: Kale or Swiss chard can replace the spinach if you prefer heartier greens. If using kale, remove stems, chop finely, and cook a minute or two longer so it becomes tender.
- Protein boost: Stir in cooked shredded chicken or white beans to make this a fuller meal. Keep the same sauce proportions so it stays creamy.
- Spice: For a touch of heat, add a pinch of cayenne or a few red pepper flakes when seasoning the sauce.
Troubleshooting
- Sauce too thin: Simmer a few more minutes to reduce and thicken, or whisk in a small additional pinch of flour mixed with a tablespoon of cold milk to make a slurry before adding.
- Sauce too thick: Whisk in a splash of the reserved pasta water or an extra tablespoon or two of milk until you reach the desired consistency.
- Grainy sauce: Make sure to melt the cheese over low heat and stir constantly. High heat can cause the cheese to separate and become grainy.
Final thoughts
This Spinach Macaroni and Cheese is a dependable favorite that balances creamy indulgence with bright greens and layered cheese flavors. It’s indulgent without feeling heavy, and it’s flexible enough to adapt to what you have on hand. Whether you’re feeding a family, entertaining friends, or just craving something comforting with a fresh twist, this recipe delivers every time.
Make it tonight and enjoy a bowl of warm, cheesy pasta that feels both familiar and a little bit special.

Spinach Macaroni and Cheese
Ingredients
Equipment
Method
- Bring a pot of salted water to a boil and cook the elbow macaroni according to package directions; drain and set aside.
- In a large saucepan over medium heat, melt the butter. Add the minced sweet onion and sauté until softened, about 5 minutes.
- Whisk in the flour and cook until the mixture turns lightly golden, about 1 to 2 minutes.
- Slowly whisk in the whole milk, then the 2% milk. Increase heat to medium-high and bring the sauce to a gentle boil, whisking constantly until smooth and thickened, about 10 to 12 minutes.
- Season the sauce with a pinch of kosher salt and freshly ground black pepper, tasting and adjusting as needed.
- Add the sliced spinach to the sauce and stir until wilted, about 1 to 2 minutes.
- Reduce heat to low and stir in the shredded cheddar, shredded smoked gouda, and crumbled goat cheese until fully melted and smooth.
- Add the cooked elbow macaroni to the cheese sauce and stir until the pasta is evenly coated. Taste and adjust salt and pepper if desired, then serve immediately.
Notes
- Stack spinach leaves and slice to make 1/2-inch strips.
- Use any combination of cheeses (not low-fat) to total about 2 cups if desired.
