Heat a large heavy-bottomed pot over medium heat. Add butter or olive oil.
Sauté the chopped onion and garlic for 2-3 minutes until fragrant and golden.
Add the broccoli and cauliflower florets, stirring to coat them in the aromatics.
Pour in the vegetable or chicken broth, ensuring the vegetables are covered.
Season with salt, black pepper, and dried thyme.
Bring the mixture to a gentle boil, then reduce heat to a simmer. Cover and cook for 15-20 minutes until the vegetables are tender.
Remove from heat. Use a hand blender to blend the soup until smooth and creamy. For a chunkier texture, blend only half the soup.
Stir in the shredded cheddar cheese and milk. Mix well until the cheese is melted and fully incorporated.
Taste and adjust seasoning if needed.
Serve hot, garnished with additional cheese or croutons if desired.