Flaky croissant pieces turn into something much better than the sum of their parts when they soak up a savory egg custard and bake into a puffed, golden brunch casserole. The edges crisp up, the center stays tender, and the ham and Gruyère bring just enough salt and richness to keep every bite interesting. It’s the kind of dish that looks like you spent all morning in the kitchen, even though most of the work happens while it bakes.
This version works because the croissants aren’t treated like plain bread. They need time to drink in the custard so the middle turns soft without collapsing into mush. Dijon cuts through the cream and cheese, and Gruyère melts into a nutty layer that feels a little more special than standard cheddar. If you’ve ever had a breakfast casserole come out dry on top and soggy underneath, the answer is in the rest time and the way the croissants are packed into the dish.
Below, I’ve included the small details that matter most: how to get the custard balanced, what to do if your croissants are extra fresh, and how far ahead you can assemble the whole thing without losing that crisp, buttery top.
The croissants soaked up the custard perfectly, and the top baked up golden instead of soggy. I let it rest overnight, and it sliced cleanly for brunch the next morning.
Save this ham and cheese croissant casserole for an easy brunch bake with a crisp, buttery top and a custardy center.
The Secret Is Letting the Croissants Drink First
The most common mistake with a croissant casserole is baking it the second the custard goes in. Croissants are airy and buttery, which is great for texture, but it also means they need a little patience to absorb the egg mixture all the way through. If you rush this part, the outside bakes before the center has a chance to set, and you end up with a dry top and a wet middle.
Pressing the croissant pieces down after pouring in the custard helps every nook and cranny get coated. The rest time gives the eggs, milk, and cream time to move into the bread instead of pooling at the bottom of the dish. Overnight soaking gives the most even texture, but even 30 minutes on the counter makes a noticeable difference.
What the Ham, Cheese, and Dijon Are Doing Here

- Croissants — These bring the buttery layers that make the casserole feel rich instead of just bready. Day-old croissants work best because they hold their shape after soaking; very fresh croissants can turn too soft, so leave them out for a few hours if that’s what you have.
- Gruyère or Swiss — Gruyère gives a nutty melt and a little more depth, while Swiss is the easier swap if that’s what’s in the fridge. Pre-shredded cheese works, but freshly shredded cheese melts more smoothly and gives you better browning on top.
- Dijon mustard — This doesn’t make the casserole taste like mustard. It sharpens the custard and keeps the cheese from tasting heavy. Yellow mustard won’t give the same edge, so Dijon is worth using here.
- Heavy cream and whole milk — The milk keeps the custard pourable while the cream gives it body and a softer, more velvety set. Using all milk makes the bake lighter but less luxurious; using all cream can turn it dense.
- Ham — Diced ham gives salty bites throughout the dish and helps balance the richness of the cheese. Leftover baked ham, deli ham, or thick-cut ham all work, as long as the pieces are small enough to distribute evenly.
Building the Custard So It Bakes Up Soft, Not Watery
Layering the Dish
Grease the baking dish well, then arrange the croissant pieces in a loose, even layer. Scatter the ham and one cup of the cheese over and around the bread so the savory bits end up in every slice. If the croissants are packed too tightly, the custard can’t move through the dish evenly, and the middle will stay underbaked longer than the edges.
Whisking the Base
Whisk the eggs, milk, cream, Dijon, garlic powder, salt, and pepper until the mixture looks smooth and fully blended. You want the eggs completely broken up so they bake into a unified custard instead of little streaks of cooked egg. Pour it slowly over the croissants, then press the bread down gently with a spatula or your hands so the liquid starts soaking in right away.
Resting Before the Oven
Let the casserole sit for at least 30 minutes before baking, and cover it and refrigerate overnight if you want to make it ahead. During this time, the croissants hydrate and the custard thickens slightly, which helps the casserole bake evenly. If you bake it straight away, the bottom can seem done before the center has set.
Baking to the Right Finish
Top with the remaining cheese and bake at 350°F until the casserole is puffed, deeply golden, and the center no longer looks wet when you gently shake the pan. The top should be browned at the edges and glossy from the melted cheese. If it browns too quickly before the middle is set, lay a piece of foil loosely over the top for the last 10 to 15 minutes.
How to Adapt This for a Smaller Brunch, a Lighter Bake, or a Different Cheese
Make-ahead overnight brunch bake
Assemble the casserole the night before, cover it tightly, and refrigerate it overnight. The extra soaking time gives you a more even custard and cleaner slices in the morning. Let the dish sit at room temperature while the oven preheats so it doesn’t go in icy cold.
Gluten-free version
Use a sturdy gluten-free bakery croissant or another rich gluten-free bread that can hold up to soaking. The texture won’t be quite as flaky, but the custard and cheese still make the dish feel brunch-worthy. Avoid soft sandwich bread here; it turns pasty instead of tender.
Swap the ham for bacon or breakfast sausage
Cook and drain the bacon or sausage before adding it to the dish so you don’t release extra grease into the custard. Bacon gives sharper salt and more bite; sausage makes the casserole feel a little heartier and more breakfast-forward.
Use Swiss instead of Gruyère
Swiss melts smoothly and keeps the flavor a little milder, which works well if you want the ham to lead. Gruyère gives a deeper, nuttier finish, so the swap softens the whole casserole rather than changing how it bakes.
Storage and Reheating
- Refrigerator: Store leftovers covered for up to 3 days. The top softens a bit, but the flavor stays excellent.
- Freezer: This freezes best after baking. Cool completely, wrap portions tightly, and freeze for up to 2 months; the croissants will be slightly less crisp after thawing.
- Reheating: Warm slices in a 325°F oven until heated through, or use the microwave for convenience. The oven keeps the top from going rubbery, which is the biggest mistake people make with custardy bakes.
Questions I Get Asked About This Recipe

Ham and Cheese Croissant Casserole
Ingredients
Equipment
Method
- Grease a 9x13 dish and arrange torn croissant pieces in the dish.
- Scatter diced ham and 1 cup of the shredded cheese evenly over the croissants.
- Whisk eggs, whole milk, heavy cream, Dijon mustard, garlic powder, salt, and black pepper together until smooth.
- Pour the custard over the croissants and press down so the pieces absorb it.
- Let the casserole rest for 30 minutes so the custard soaks in, or refrigerate overnight for make-ahead.
- Top with the remaining cheese and bake at 350°F for 35–40 minutes until puffed and deeply golden.
- Garnish with fresh thyme and serve warm.