Melt 2 tablespoons butter in a large pot or skillet. Add garlic and throw in the spinach. Stir it around until it’s wilted, about 1 minute. Remove spinach from heat and set aside.
Add 2 tablespoons butter to the same pot and raise the heat to high. Throw in the halved artichokes and stir it around until they get a little color, 1 to 2 minutes. Remove the artichokes from the pot and set them aside.
Reduce the heat to low. Add 2 tablespoons butter to the pot. When melted, sprinkle in flour and whisk until it’s combined. Pour in milk and whisk to combine. Let it cook for 3 to 4 minutes, or until starting to thicken. Add Parmesan, Mozzarella/Monterey Jack, salt and pepper, and cayenne pepper. Stir to melt, and if it’s overly thick, splash in chicken broth.
Add artichokes and pasta, tossing gently to combine. Gently fold in spinach, then pour the pasta into a serving bowl. Sprinkle the top with crushed red pepper flakes and plenty of Panko breadcrumbs for crunch.