01 -
Heat olive oil in a large high-sided skillet or frying pan over medium heat. Add diced shallots with a pinch of salt and pepper and cook until softened, about 3-5 minutes.
02 -
Add chopped sundried tomatoes and halved baby tomatoes to the skillet. Stir and cook for about 2-3 minutes.
03 -
Add minced garlic, dried oregano, chili flakes, salt and pepper. Cook until fragrant, about 1 minute.
04 -
Pour in milk and 1/2 cup of broth, scraping the bottom of the pan to release browned bits. Bring mixture to a low simmer and add rinsed beans. Reduce heat to medium-low, partially cover with a lid, and cook for 5-7 minutes, stirring occasionally, until beans are tender and sauce is creamy.
05 -
If a more brothy texture is preferred, add up to 1/2 cup additional broth and cook for 2 more minutes.
06 -
Reduce heat to low and stir in baby spinach and parmesan cheese. Cook for 1-2 minutes, ensuring spinach is wilted. Adjust seasoning with salt and pepper to taste. Remove skillet from heat.
07 -
Top with shredded mozzarella cheese and broil for 3-5 minutes until cheese is melted and bubbling.
08 -
Serve immediately topped with fresh basil, additional chili flakes, and grated parmesan cheese. Optionally, serve with crusty bread for dipping.