Quick Recipe Version (TL;DR)
Quick Ingredients
- 8 slices country bread, 1/2-inch thick (about 400 g)
- 4 tbsp (56 g) unsalted butter, divided
- 2 tbsp (16 g) all-purpose flour
- 1 1/4 cups (300 ml) whole milk, warmed
- 8 oz (225 g) Gruyère, grated, divided
- 8 oz (225 g) thinly sliced ham
- 3 tbsp (45 g) Dijon mustard
- 1/4 tsp kosher salt, 1/8 tsp white pepper, 1/8 tsp ground nutmeg
Do This
- 1. Heat oven to 425°F (220°C). Line a sheet pan with parchment.
- 2. Brush bread lightly with 2 tbsp melted butter; toast 6–8 minutes, flipping once, until lightly golden.
- 3. Make béchamel: melt 2 tbsp butter, whisk in flour 1 minute, slowly whisk in warm milk; simmer 3–4 minutes. Season with salt, white pepper, nutmeg.
- 4. Grate Gruyère; reserve 1/2 cup (about 2 oz/55 g) for topping.
- 5. Spread Dijon on 4 slices, layer ham and most of the cheese, top with remaining bread.
- 6. Bake closed sandwiches 8 minutes to melt inside.
- 7. Spread 2 tbsp béchamel over each, top with reserved cheese; bake 5 minutes, then broil 1–2 minutes until bubbling and browned. Rest 2 minutes, slice, serve.
Why You’ll Love This Recipe
- Classic French bistro comfort: crisp, buttery bread with a creamy béchamel crown and nutty Gruyère.
- Oven-based method keeps it simple and fuss-free—no splattering skillet.
- Make-ahead friendly béchamel speeds up weeknight cooking.
- Perfect with a green salad or a handful of cornichons for an elegant, fast meal.
Grocery List
- Produce: Fresh chives or flat-leaf parsley (optional, for garnish)
- Dairy: Whole milk, unsalted butter, Gruyère cheese
- Pantry: Country bread, Dijon mustard, all-purpose flour, kosher salt, white pepper, ground nutmeg, thinly sliced ham
Full Ingredients
Béchamel Sauce
- 2 tbsp (28 g) unsalted butter
- 2 tbsp (16 g) all-purpose flour
- 1 1/4 cups (300 ml) whole milk, warmed
- 1/4 tsp kosher salt
- 1/8 tsp ground white pepper
- 1/8 tsp ground nutmeg (or a few fresh gratings)
Sandwiches
- 8 slices country-style bread, 1/2-inch thick (about 400 g total)
- 2 tbsp (28 g) unsalted butter, melted, for brushing
- 3 tbsp (45 g) Dijon mustard
- 8 oz (225 g) Gruyère cheese, coarsely grated (about 2 cups), divided
- 8 oz (225 g) thinly sliced ham (Parisian, Black Forest, or similar)
To Serve (Optional)
- Finely chopped chives or parsley
- Cornichons

Step-by-Step Instructions
Step 1: Preheat and toast the bread
Heat the oven to 425°F (220°C). Line a rimmed sheet pan with parchment. Lightly brush one side of each bread slice with the melted butter. Arrange on the pan and toast for 6–8 minutes, flipping halfway, until the bread is pale golden and just crisp at the edges. This pre-toast keeps the sandwiches from getting soggy later.
Step 2: Make a silky béchamel
In a small saucepan over medium heat, melt 2 tbsp butter. Whisk in the flour and cook, whisking constantly, for 1 minute to remove the raw flour taste. Gradually whisk in the warm milk, a splash at a time, until smooth. Bring to a gentle simmer and cook 3–4 minutes, whisking, until the sauce thickly coats the back of a spoon. Season with salt, white pepper, and nutmeg. Reduce heat to low, cover, and keep warm.
Step 3: Prep the fillings
Coarsely grate the Gruyère. Reserve 1/2 cup (about 2 oz/55 g) for topping the sandwiches. Keep the rest for the filling. Separate the ham slices so they layer evenly.
Step 4: Assemble the sandwiches
Spread about 2–3 teaspoons Dijon on the unbuttered side of 4 toasted slices. Divide the ham evenly over the mustard. Top with the majority of the grated Gruyère. Cap with the remaining bread slices, toasted side facing out so the exterior stays crisp.
Step 5: Melt the interior cheese
Return the closed sandwiches to the sheet pan and bake for 8 minutes, until the cheese inside is beginning to melt and the bread edges are lightly browned.
Step 6: Sauce and gratiné
Remove the pan from the oven. Spread about 2 tablespoons of warm béchamel over the top of each sandwich, all the way to the edges. Sprinkle with the reserved Gruyère. Return to the oven and bake for 5 minutes, then switch to broil (high) and broil 1–2 minutes, watching closely, until the tops are bubbly and deeply golden with some browned spots.
Step 7: Rest, slice, and serve
Let the croque-monsieur rest for 2 minutes to set the sauce. Sprinkle with chives or parsley if using. Slice diagonally and serve immediately with cornichons or a simple green salad.
Pro Tips
- Warm the milk before adding to the roux—this prevents lumps and speeds thickening.
- Day-old bread works best; it toasts evenly and stays crisp under the sauce.
- Grate cheese from a block. Pre-shredded cheese contains anti-caking agents that hinder melting.
- Béchamel should be nappe-thick (coats a spoon). If it’s thin, simmer 1–2 minutes more; if too thick, whisk in a splash of warm milk.
- For an even brown top, broil on the upper rack and rotate the pan once.
Variations
- Croque-Madame: Top each sandwich with a sunny-side-up or poached egg just before serving.
- Cheese swap: Try Comté or Emmental for a slightly different nutty profile.
- Inside-sauce version: Spread a tablespoon of béchamel inside each sandwich for extra creaminess (reduce Dijon slightly to balance).
Storage & Make-Ahead
Béchamel can be made up to 3 days ahead; press plastic wrap directly on the surface, refrigerate, and rewarm gently with a splash of milk. Grate cheese up to 2 days ahead. Assembled sandwiches (without béchamel) can be held for a few hours, covered and refrigerated; bake just before serving. Leftovers: refrigerate tightly wrapped for up to 2 days. Reheat at 350°F (177°C) for 12–15 minutes; broil 30–60 seconds to re-crisp the top. Fully assembled sandwiches don’t freeze well, but the béchamel can be frozen for up to 2 months.
Nutrition (per serving)
Approximate: 760 calories; 40 g protein; 44 g carbohydrates; 42 g fat; 1.7 g fiber; 1400 mg sodium. Values will vary based on bread, ham, and cheese brands.


Leave a Reply