Try my new budgeting app Cheddar 🧀
Better than YNAB, Mint (RIP), or EveryDollar.
Export 8 ingredients for grocery delivery
Step 1
Preheat oven to 350 degrees F. Cook macaroni for half the time of the package instructions, drain, and set aside.
Step 2
In a large skillet, fry the bacon until crispy. Drain on a paper towel, and chop into small bits. Reserve 1 tablespoon of the bacon grease.
Step 3
In the same skillet that you fried the bacon in, add the onions, and cook over medium-low heat for 15 to 20 minutes, or until golden-brown, caramelized, and soft. Set aside.
Step 4
In a pot, melt 4 tablespoons butter. Sprinkle in flour, and whisk to combine. Cook, stirring constantly, over medium heat for 1 minute.
Step 5
Pour in milk, and cook for 3 to 5 minutes, or until thick. Reduce heat to low. Add salt and pepper to taste. (Do not under-salt!)
Step 6
Beat egg yolks in a separate small bowl, and then drizzle 1/4 cup hot milk mixture into the yolks, stirring constantly. Pour egg mixture back into sauce, and cook for another minute.
Step 7
Add cheese, and stir until melted. Add onions and bacon, and stir. Taste for seasoning, and add more salt if needed.
Step 8
Add cooked macaroni and stir to coat. Pour into a baking dish, and bake for 15 to 20 minutes, or until sizzling and hot.