Quick Recipe Version (TL;DR)
Quick Ingredients
- 4 large bakery-style croissants
- 4 teaspoons Dijon mustard
- 6 ounces thinly sliced smoked ham
- 4 slices Swiss cheese, about 4 ounces
- 6 large eggs
- 2 tablespoons whole milk
- 1/4 teaspoon fine salt
- 1/8 teaspoon ground black pepper
- 1 tablespoon unsalted butter
- 1 packed cup baby spinach
Do This
- 1. Preheat the oven to 350°F (175°C) and line a baking sheet with parchment paper.
- 2. Split the croissants, spread each bottom with 1 teaspoon Dijon, and add the ham and Swiss cheese.
- 3. Bake the croissant bottoms and tops for 5 to 7 minutes, until warm and the cheese is melted.
- 4. Whisk the eggs with the milk, salt, and pepper.
- 5. Melt the butter in a skillet over medium-low heat and scramble the eggs for 3 to 4 minutes, leaving them soft and fluffy.
- 6. Layer baby spinach and scrambled eggs over the melted cheese, add the croissant tops, and serve immediately.
Why You’ll Love This Recipe
- Flaky croissants make an ordinary breakfast sandwich feel bakery-worthy.
- Soft scrambled eggs, smoky ham, and melted Swiss create a rich, satisfying filling.
- Dijon mustard and fresh baby spinach balance the buttery ingredients with brightness.
- The sandwiches are ready in just 25 minutes and are easy to customize.
Grocery List
- Produce: 1 packed cup baby spinach
- Dairy: 6 large eggs, 2 tablespoons whole milk, 1 tablespoon unsalted butter, and 4 ounces sliced Swiss cheese
- Bakery: 4 large bakery-style croissants
- Deli: 6 ounces thinly sliced smoked ham
- Pantry: Dijon mustard, fine salt, and ground black pepper
Full Ingredients
For the Croissant Sandwiches
- 4 large bakery-style croissants, sliced horizontally without pressing down on the flaky layers
- 4 teaspoons Dijon mustard
- 6 ounces thinly sliced smoked ham, about 8 slices
- 4 slices Swiss cheese, about 4 ounces total
- 1 packed cup baby spinach, about 1 ounce
For the Fluffy Scrambled Eggs
- 6 large eggs
- 2 tablespoons whole milk
- 1/4 teaspoon fine salt
- 1/8 teaspoon ground black pepper
- 1 tablespoon unsalted butter

Step-by-Step Instructions
Step 1: Preheat the oven and prepare the croissants
Preheat the oven to 350°F (175°C). Line a large baking sheet with parchment paper. Use a serrated knife to carefully slice each croissant in half horizontally. Avoid pressing down as you cut so the delicate, flaky layers remain intact.
Step 2: Add the mustard, ham, and cheese
Arrange all of the croissant halves cut-side up on the prepared baking sheet. Spread 1 teaspoon Dijon mustard over each bottom half. Divide the smoked ham evenly among the bottoms, folding the slices loosely to create light, tender layers. Place 1 slice of Swiss cheese over the ham on each sandwich.
Step 3: Warm the croissants
Bake the filled croissant bottoms and the uncovered tops for 5 to 7 minutes. The croissants should be warmed through and lightly crisp at the edges, and the Swiss cheese should look glossy and fully melted. Watch the tops closely and remove them early if they begin to brown too quickly.
Step 4: Whisk the eggs
While the croissants warm, crack the eggs into a medium bowl. Add the whole milk, salt, and black pepper. Whisk for 30 to 45 seconds, until the yolks and whites are completely blended and the mixture is slightly frothy. This added air helps create fluffy curds.
Step 5: Cook the eggs gently
Melt the butter in a 10-inch nonstick skillet over medium-low heat, swirling to coat the bottom. Pour in the egg mixture and let it sit undisturbed for about 20 seconds. Use a silicone spatula to slowly push the eggs from the edges toward the center, tilting the skillet so the uncooked egg flows into the open spaces. Continue folding gently for 3 to 4 minutes, until soft curds form and the eggs are just set but still slightly glossy. Remove the skillet from the heat immediately so the residual heat does not overcook them.
Step 6: Assemble the sandwiches
Divide the baby spinach among the warm croissant bottoms, placing it directly over the melted Swiss cheese. Spoon the scrambled eggs evenly over the spinach. The warmth of the cheese and eggs will soften the leaves without making them watery. Place the croissant tops over the eggs and press only very lightly to secure the sandwiches.
Step 7: Serve warm
Transfer the sandwiches to plates and serve immediately while the croissants are crisp, the eggs are tender, and the Swiss cheese is still melted. If desired, cut each sandwich in half with a serrated knife to showcase the colorful layers.
Pro Tips
- Use medium-low heat for the eggs: Gentle cooking produces soft, creamy curds instead of dry or rubbery scrambled eggs.
- Remove the eggs while they look slightly glossy: They will continue cooking from residual heat as you assemble the sandwiches.
- Choose sturdy croissants: Large bakery croissants hold the generous filling better than very soft packaged croissants.
- Fold rather than stack the ham: Loose folds warm more evenly and give each bite a lighter texture.
- Season carefully: Smoked ham, Swiss cheese, and Dijon already contain salt, so taste before adding extra at the table.
Variations
- Turkey and Gruyère: Replace the smoked ham with 6 ounces sliced roasted turkey and replace the Swiss with 4 ounces Gruyère.
- Vegetarian mushroom: Omit the ham and sauté 8 ounces sliced cremini mushrooms in 1 tablespoon olive oil for 6 to 8 minutes before assembling the sandwiches.
- Spicy breakfast sandwich: Replace the Swiss with 4 ounces pepper Jack cheese and spread an additional 1/2 teaspoon hot sauce inside each croissant.
Storage & Make-Ahead
These sandwiches are best served immediately, while the croissants are crisp and the eggs are soft. To prepare ahead, slice the croissants and portion the ham and cheese up to 1 day in advance; refrigerate the ham and cheese in airtight containers and keep the croissants covered at room temperature. Whisk and cook the eggs just before serving. Leftover assembled sandwiches can be wrapped individually and refrigerated for up to 2 days. For the best texture, remove any fresh spinach you can, wrap the sandwich loosely in foil, and reheat it in a 325°F (165°C) oven for 10 to 12 minutes. Add fresh spinach after reheating. To freeze, assemble the sandwiches without the spinach or Dijon, wrap tightly, and freeze for up to 1 month. Reheat from frozen, wrapped in foil, at 350°F (175°C) for 20 to 25 minutes, then add the Dijon and spinach before serving.
Nutrition (per serving)
Calories: 580 kcal | Carbs: 34g | Protein: 30g | Fat: 34g | Saturated Fat: 17g | Fiber: 2g | Sugar: 7g | Sodium: 1190mg | Cholesterol: 340mg
