Cook pasta according to package directions, and drain. Meanwhile, melt 2 tablespoons butter in a Dutch oven over medium heat; add garlic, and sauté 1 minute. Add milk, and cook until thoroughly heated. Gradually stir in 1/2 cup Parmesan cheese and next 6 ingredients; whisk until smooth. Stir in spinach. Add cooked pasta, tossing to coat. Spoon into a lightly greased 13" x 9" baking dish.
Combine breadcrumbs, remaining 1/2 cup Parmesan cheese, and 2 tablespoons melted butter in a small bowl. Sprinkle breadcrumb topping over macaroni. Bake, uncovered, at 375° for 20 minutes or until golden.
Fresh Spinach Substitution: You can substitute a 10-ounce package of fresh spinach instead of using frozen spinach, if desired. Just wash the spinach, trim stems, and coarsely chop the leaves. Then wilt the leaves for 1 to 2 minutes in hot water in a pan.