Add the olive oil and onions to a saucepan over medium-high heat. I recommend using a saucepan instead of a skillet so that the heat from the pan can rise and assist in browning the onions.
Cook for 2-3 minutes until the onions become fragrant and soft. Lower the heat to medium-low.
Add the balsamic vinegar and mushrooms. Cook for an additional 20 minutes, stirring every 3-4 minutes to ensure the onions don't burn. You want them to brown, but remain soft. While the onions and mushrooms brown, begin prepping the mac and cheese.
Mac and Cheese Instructions
Preheat oven to 400 degrees.
Boil a large pot of salted water over high heat. Add the macaroni and cook for about 5 minutes.
Drain the macaroni and rinse with cold water. Reserve some of the water from the pasta in case you need it later. This is important. You want the pasta to cool so that it does not continue to cook. The pasta will cook again while baking in the oven. Over-cooked pasta results in a terrible texture.
Heat a sauce pan on medium heat. Add the butter and allow it to melt.
Once melted, add the flour and whisk. This will create a slurry. Continue to whisk until the four is fully combined.
Add the milk and heavy whipping cream and stir.
Add half of the cheese and stir until the cheese is melted.
Add the seasonings and taste repeatedly. This step is important because you don't want bland mac and cheese.
Return the pasta to the large pot. Drizzle the liquid mixture over the pasta and stir until fully combined.
Ensure there is adequate liquid throughout these steps (additional milk or reserved pasta water work well). This can be tricky. You do not want the dish to appear like soup, but you do not want it to be dry.
This step is important because without adequate liquid the dish will dry out while baking.
Spray a baking pan with cooking spray.
Begin to layer in the pasta. Start with the pasta, then add a layer of all of the shredded cheese and gouda chunks. Add the onions and mushrooms.
Add another layer of pasta, and then another layer of cheese.
Sprinkle the panko bread crumbs throughout the top.
Bake for 20 minutes until the cheese has melted and is bubbly.
Cool before serving.
You can choose whatever cheese you want for this recipe. I mix and match the cheese I use with mac and cheese dishes all of the time. Romano, fontina, and white cheddar work really well, too.