Melt the butter in a non-reactive medium pot or Dutch oven, add the onions, and stir until softened but not browned.
Add flour and stir constantly until well blended (about 1 minute).
Add the broth slowly while whisking constantly, until the stock is smooth, reduce heat and simmer for a 4-5 minutes
Add carrots and bring to just a boil, then reduce heat to a low simmer. Continue cooking until carrots are very tender (40-50 minutes).
Remove from heat and allow to cool for 30 minutes or so.
Using a blender, blend the soup in batches, filling the blender up half way only, then transferring to a bowl. Return the soup to a pot when all the soup has been completely blended.
Heat the pureed soup up over medium heat and add sour cream.
Season with salt and pepper (and pinch of cardamom, if using).
Ladle soup into soup bowls and top with migas.
For migas
Fry ¼ pound chopped Spanish Chorizo (rind removed) in a little olive until crisp, then transfer to a bowl and set aside.
Add 2-4 tablespoons more olive oil and fry 2 cups day-old, dry bread (crusts removed) until brown. Add chopped garlic (if using).
Season with salt, pepper, and paprika before removing from heat.
Recipe by Have You Eaten, SF? at https://haveyoueatensf.com/cream-carrot-soup-chorizo-migas/