Heat the oil in a skillet over medium heat and add the shallots. Cook for a few minutes, turning frequently, until crispy. Remove from the skillet and reserve the remaining oil.
Add the reserved oil to a large stock pot over medium heat. Add the onion & garlic and cook for 3 minutes. Stir in the dry seasonings & thyme and cook for 2 more minutes. Pour in the pasta, broccoli, broth and milk. Bring to a boil, then simmer until the pasta has absorbed all of the liquid - be sure to stir frequently, so that all of the pasta gets cooked. This should take 8-10 minutes.
Stir in the cream, parmesan and cream cheese. Continue to cook until the pasta is completely tender (approx. 5 minutes), stirring frequently. Taste and adjust salt and pepper as needed.
Serve hot with the crispy shallots on top.
