In a large pot, melt the butter over medium heat. Add the chopped onion, carrots, and celery. Sauté for about 5-7 minutes, until the vegetables are softened.
Stir in the thyme, parsley, salt, and pepper. Cook for another 2 minutes until fragrant.
Add the minced garlic and cook for 1-2 minutes, stirring frequently to prevent burning.
Pour in the chicken or vegetable broth and bring the mixture to a boil. Reduce the heat and let it simmer for 15 minutes.
Stir in the heavy cream and bring the soup back to a gentle simmer.
Add the cubed bread and Parmesan cheese, stirring until the cheese is melted and the bread is softened.
Taste and adjust seasoning if necessary. Serve hot, garnished with fresh parsley.