Cook the pasta to al dente according to package directions.
1 pound dry elbow macaroni
While the pasta is cooking, fry the bacon in a large cast-iron (or other oven-safe) skillet until crispy.
10 slices bacon
Remove the bacon and place it on a plate lined with paper towels to drain. Wipe out the pan.
Preheat oven to 375°F.
Melt 5 tablespoons of butter in the now-clean skillet. Add in the onion and a sprinkle of salt and sauté for a couple of minutes until softened. Then, add in the garlic.
8 tablespoons unsalted butter, ¼ cup minced onion, 2 cloves garlic
Stir in the flour until the mixture becomes pasty.
¼ cup all-purpose flour
Gradually pour in the milk while whisking the mixture over low-medium heat. Continue whisking until the mixture has thickened.
3¼ cups whole milk
Whisk in the sour cream.
½ cup sour cream
Take the skillet off the heat. Then, add in 3 cups of cheddar cheese and stir until completely melted and incorporated.
4-5 cups freshly shredded sharp cheddar cheese
Add the pasta to the skillet and stir to coat.
Crumble the bacon and stir half of the crumbles into the macaroni.
In a small saucepan or skillet, melt the remaining 3 tablespoons of butter over medium heat.
Add in the Panko breadcrumbs and garlic salt, and stir until toasted and golden brown.
1 cup Panko breadcrumbs, ½ teaspoon garlic salt
Top the the macaroni with the remaining bacon and cheese, and the toasted breadcrumbs.
Bake for 15 minutes until the mixture is bubbly and crispy on the edges.
Top with chopped green onion and/or parsley before serving.
Chopped green onion and/or parsley