Preheat the oven to 200ºC/Fan 180ºC/Gas Mark 6.
Bring a pan of salted water to the boil and cook the macaroni in it for 5–6 minutes, until al dente.
While the water is heating and the pasta is cooking, place the butter and garlic in a large saucepan over a low heat. Once the butter has melted, gently fry the garlic for a further 2 minutes.
Add the flour and use a whisk to mix into a thick paste. Continue to cook for 30–60 seconds, stirring constantly so it doesn’t stick.
Pour in about 100ml of the milk and stir constantly until it forms a smooth, thick paste. Continue adding the milk about 100ml at a time, stirring constantly after each addition, until the mixture is smooth again. Once all the milk has been added, you should have a smooth, thick white sauce.
Drain the macaroni, then pour back into its pan and stir in a knob of butter until melted. Set to one side.
Add the grated Cheddar and mozzarella to the white sauce, then crumble in the cheese slices. Stir until all the cheese has melted, then remove from the heat.
Add the cooked macaroni to the sauce and mix well. Pour the mixture into a 23cm ovenproof dish, then sprinkle with the breadcrumb and cheese toppings. Bake for 20 minutes, until the surface is golden and bubbling.
Serve with a good helping of peas or a fresh green salad.