Cook the spaghetti according to package instructions. Drain and set aside.
In a large skillet, cook the ground beef over medium heat until browned. Add the chopped onion and minced garlic, and cook until the onion is translucent.
Stir in the dried oregano, dried basil, and tomato sauce. Simmer for 10 minutes.
In a large pot, melt the butter over medium heat. Whisk in the flour and cook for 1-2 minutes. Gradually whisk in the milk and cook until the sauce thickens. Stir in the nutmeg and grated Parmesan cheese.
Combine the cooked spaghetti with the meat sauce and mix well. Transfer to a baking dish.
Pour the béchamel sauce over the spaghetti mixture, spreading it evenly. Sprinkle with additional Parmesan cheese if desired.
Bake in the preheated oven for 30-35 minutes, or until the top is golden brown and bubbly.
Let the casserole cool for a few minutes before serving. Enjoy!
Notes:
This casserole can be made ahead of time and refrigerated. Just bake it when you're ready to serve.