Sauté the Veggies: In a large stockpot, melt the butter or oil over medium-high heat. Add the diced onion and sauté for 4 minutes, stirring occasionally. Then, add the carrots, celery, and minced garlic, and sauté for an additional 3 minutes. Stir in the flour and sauté for 1 more minute, stirring frequently.
Add the Next Round of Ingredients: Gradually pour in the chicken stock, stirring the soup frequently to dissolve any clumps of flour into the broth. Then, add the chicken breasts, diced mushrooms, wild rice, rosemary, and bay leaves. Stir to combine.
Simmer: Allow the soup to reach a simmer, then reduce the heat to medium-low to maintain the simmer. Cover and cook for 40-45 minutes, stirring every 5-7 minutes to prevent the bottom from burning. The wild rice should be tender when done.
Shred or Dice the Chicken: Use tongs to carefully transfer the chicken breasts to a clean plate. Dice or shred the chicken into bite-sized pieces using two forks and return it to the soup.
Add the Remaining Ingredients: Stir in the milk and chopped baby spinach until fully combined.
Season: Remove and discard the bay leaves. Taste the soup and season with salt and freshly cracked black pepper as needed.
Serve: Serve the soup warm and enjoy!