We value your privacy
The pesto can be made a day ahead and kept in the fridge. The cheese sauce can also be made ahead; add an extra splash of milk when reheating to get the right consistency.
To make the pesto, reserve some small basil leaves to garnish, then put the rest in a small food processor with the remaining pesto ingredients. Blitz until smooth. Season and set aside.
Bring a large pan of salted water to the boil and cook the pasta until al dente. Tip into a colander and leave to drain thoroughly.
Meanwhile, heat the milk in a saucepan until hot but not boiling. In another heavy-bottomed pan, melt the butter. Reduce to a low heat and gradually add the flour, stirring into a paste with a wooden spoon – this is your roux. Cook for 3-4 minutes, stirring continually, until it turns golden in colour, being careful not to overbrown the mixture.
Take the pan off the heat and slowly whisk the milk into the roux, a little at a time, stirring vigorously. Once fully combined, put back on a medium heat and cook for another 5-8 minutes or until the sauce is smooth and thick enough to coat the back of the wooden spoon. Stir frequently to make sure it doesn’t stick to the bottom of the pan. Season with salt.
Return the pan to the hob, turning the heat down to low. Add the cheddar and Parmesan and mix until melted, stirring occasionally to stop it sticking. Meanwhile, fry the bacon in a frying pan until crisp, pouring any fat that collects in the pan into the cheese sauce and mixing well.
Fold the drained pasta into the cheese sauce. Spoon the macaroni cheese into serving bowls, drizzle over the pesto and put the bacon rashers across the top of each dish, along with a few basil leaves. Grind over some black pepper to serve.