Cook macaroni following packet instructions then drain.
While macaroni is cooking, heat a large saucepan over medium heat and add first measure of butter and bacon to pan. Cook until crispy, stirring occasionally. Add onion and garlic and continue cooking until soft. Remove to a plate and wipe pan clean if necessary.
Melt second measure of butter in the same saucepan over medium heat until frothy. Add flour and cook stirring for 3 minutes or until golden brown. Whilst stirring, gradually add hot milk. Continue stirring until sauce comes to the boil and has thickened. Simmer for 5 minutes, stirring occasionally.
Remove from heat, stir in tasty cheese, mustard powder, first measure of parmesan cheese and season well with salt and pepper. Stir until cheeses have melted.
Add pasta and bacon mixture to cheese sauce, stirring to combine. Pour mixture into a lightly greased ovenproof dish. Combine breadcrumbs, second measure of parmesan and melted butter, then sprinkle over mixture in dish.
Cook for 20-25 minutes or until topping is golden brown.