With caramelized onions and salty, smoky ham, this macaroni and cheese recipe pleases adults and kids alike. It’s a perfect recipe for leftover holiday ham!
When my girls were much younger, they refused to take even the smallest bite of any dish containing onions.
Because I understood the value of choosing my battles, I sometimes left onions out of recipes or resorted to sneaking them into food rather suffer through dinner-time tension.
Here’s the funny part: whenever I used onions incognito, my kids never, ever noticed. Usually, instead of adding diced onions as called for, I’d caramelize onions and puree them before adding them to a dish. I was never super subtle about this, either. I’d prep onions while my daughters hung out in the the kitchen. Sometimes, they’d even complain that the onions hurt their eyes. But by the time they’d tucked into generous bowls of, say, macaroni and cheese, no one ever asked what happened to the onions.
My efforts to disguise onions often improved already favorite dishes. This shouldn’t surprise me, since caramelizing onions replaces their sharp edge with a deep, rich sweetness.
These days, I appreciate my kids’ ability to eat around the onions in their food without making a big fuss, but I still make macaroni and cheese with undercover onions. Caramelizing the onions add a subtle sophistication to the rich, creamy cheese sauce. A bit of chopped ham perfects the dish with its salty, smoky flavor. The result is pure comfort food that everyone loves.
Sure, I could stir in caramelized onions without taking the extra step of making them disappear. But since I have my kids to thank for this brilliant improvement, I’m not changing a thing.
Macaroni & Cheese with Caramelized Onions & Ham
- 1 tablespoon olive oil
- 1 tablespoon plus ¼ cup unsalted butter, divided
- 1 onion, halved and sliced thinly
- 2 tablespoons water
- ¼ cup unbleached all-purpose flour
- 4 cups milk
- ½ teaspoon paprika
- 1 bay leaf
- 5 cups grated cheddar or Colby Jack cheese (about 14 ounces), divided
- 6 ounces ham, chopped in bite sized pieces
- salt and pepper, to taste
- 1 pound elbow pasta, cooked al dente
- 1 cup panko bread crumbs
- Heat olive oil and 1 tablespoon butter in a large skillet over medium-high heat. When the butter has melted, add onion and season with salt and pepper. Stir in two tablespoons water, cover pot, and cook for several minutes, until onions soften slightly and begin to release their liquid. Remove lid, reduce heat to medium-low, and continue cooking for about 30 minutes, stirring occasionally, until the onions are very tender. Increase heat to medium-high and cook, stirring frequently, for about 5 more minutes, until the onions are golden and beginning to fall apart.
- Meanwhile, melt remaining butter in a large sauce pan. Add flour and cook over medium-low heat for 3 minutes, whisking constantly until mixture turns a pale nutty brown. Slowly add milk while whisking, taking care as the steam will be very hot. Mix in paprika and onions.
- Working carefully, use a stick blender to puree the onions into the sauce (if you don't have a stick blender, whirl onions in a food processor before adding). Add bay leaf and simmer for 15 minutes.
- Off-heat, add 4 cups of the grated cheese to milk mixture, stirring until melted. Remove bay leaf. Stir in pasta and chopped ham. Season with salt and pepper.
- Transfer mixture to a greased 9 by 13-inch casserole dish. Top with remaining cheese and bread crumbs. Bake in an oven preheated to 350° F until bubbly, about 30 minutes. Let sit for 5 to 10 minutes before serving.