Cook the pasta in a large pot of boiling water until al dente, according to package directions, then drain the pasta and set aside.
Melt the butter in the now empty pot over medium heat.
Stir in the flour, garlic powder, 1 tsp salt, and 1/2 tsp black pepper until well combined then continue to cook, while stirring continuously, until the flour mixture is lightly browned, about 2 minutes.
Slowly stir in the milk until fully incorporated and continue to cook, stirring often, until the mixture just begins to boil.
Reduce the heat to medium-low and stir in the yogurt.
Now stir in the cheeses a little at a time until fully melted in the sauce.
Take the pot off the heat and slowly stir in the cooked macaroni until well combined.
Taste and season with additional salt & pepper if needed.