In a large soup pot, melt the butter. Add onions and garlic and sauté 3-5 minutes, or until translucent.
Add chopped cauliflower and sauté another 2-3 minutes. Add chicken stock (should cover cauliflower). Let simmer for 15-20 minutes or until cauliflower is tender.
Add diced tomatoes, chopped basil and Greek yogurt. Let simmer for 5 minutes.
Using an immersion blender, blend soup until creamy and there are no lumps. (You can also pour the soup into a blender in two batches, and blend until smooth. Then pour back into the pot.)
Once blended, add asiago cheese, and salt and pepper to taste. Let simmer for another 15-20 minutes, stir to combine melted cheese.
Ladle the soup into bowls and garnish with more basil, cheese and sour cream if desired.
Notes
Storage: Store in a covered container in the refrigerator for up to 3 days.