Bring a large cooking pot with enough salted water to a boil over high heat. Add the macaroni and cook according to the packet’s instructions until almost al dente. About a minute less. Drain in a colander.
Meanwhile, in a large saucepan over medium heat, melt the butter. Add the flour and whisk the mixture until golden brown, for about 3 to 4 minutes.
Gradually add cold milk while whisking, allowing the mixture to come to a boil. Then add the cream and cheddar cheese and stir to combine.
Add the cooked pasta to the sauce. Season with salt and pepper to taste and let it cook for about 5 minutes more on extremely low heat.
Meanwhile, melt the butter in a frying pan over medium-high heat and fry the mushrooms until golden. Then add the onion and garlic paste and cook for another minute until golden and fragrant.
Fold the mushrooms into the pasta and sauce, add a handful of parsley.