- Pre-heat oven to 180C (350F). In a large non-stick pan, heat oil over medium heat and cook onions until softened. Add ground beef breaking apart with a spoon. Cook until golden browned and liquid has boiled away.
- Add 1 tsp salt, 1/2 tsp pepper, and remaining spices, stirring to mix well. Cook for 1 minute. Add pasatta, stirring to coat. Cook for an additional 2 minutes with the lid on until bubbling. Take off heat to cool.
- In another large non-stick pan over medium heat, melt butter. Add flour and cook until just golden brown. Gradually add the milk, whisking in-between additions to create a smooth sauce. Bring to a gentle boil. Add cream cheese, parmesan and remaining salt and pepper. Switch off heat and stir to combine.
- Mix 2/3 of cheesy sauce with cooked macaroni to coat.
- Grease a casserole dish with butter. Add a layer of macaroni and cheese to the bottom and flatten. Top with some grated mozzarella cheese. Add a layer of meat sauce. The continue to finish with macaroni on top.
- Spread remaining cheese sauce over top of the dish. Bake in the oven for 30-40 minutes until golden brown and bubbling. Grill if needed.