Preheat your oven to 350°F (175°C).
Bring a medium pot of salted water to a boil. Add the asparagus and blanch for about 2-3 minutes until bright green and tender-crisp. Drain and place in an ice bath to stop cooking. Drain again and set aside.
In a medium saucepan, melt the butter over medium heat. Add the cream cheese and milk, whisking until smooth and creamy.
Stir in the cheddar cheese, garlic powder, salt, and black pepper. Continue whisking until the cheese is fully melted and the sauce is smooth.
In a greased baking dish, arrange the blanched asparagus evenly. Pour the cheese sauce over the asparagus, ensuring it's well coated.
Sprinkle the grated Parmesan cheese on top of the dish.
Bake in the preheated oven for 10 minutes or until bubbly and golden on top.
Remove from the oven, let it cool slightly, and serve warm.