Cook the dry pasta until al dente (usually 2 minutes less than instructed on the packet). (Don't cook the tortellini/ravioli). Drain, and set aside.
Preheat your oven to 450 degrees F (225 degrees C).
To make the sauce: add the butter and garlic to a medium saucepan and stir over a medium heat for a minute or two, just to cook the garlic a little. Add the flour and stir (I like using a whisk) until you get a smooth paste. Cook for a further 2 minutes.
Very gradually, add the first 1/2 cup of milk to the pan, stirring it in as you do. Mix in the cream cheese, then slowly add the rest of the milk. Continue to heat the mixture, stirring frequently, for 5-10 minutes until you can tell it has thickened. Stir in the buttermilk (or buttermilk powder + milk), and the grated cheese. Season with salt and pepper.
Stir the pasta into the sauce, then pour into a large,oven proof dish.
Make the breadcrumb topping by melting the butter in a small frying pan, add the breadcrumbs, thyme and salt and pepper. Toast over a medium heat for 2-3 minutes until crisped. Scatter the grated Parmesan/Cheddar evenly over the surface of the pasta, followed by the breadcrumbs. Bake for 10 minutes until golden.