Heat butter in a large saucepan over medium-low heat. When oil is hot, add onion, garlic, and carrots. Cook for about 10 minutes, or until onions are translucent and carrots are soft.
Add in tomato paste and cook for 7 minutes, stirring occasionally. Add in the stock, orange juice and zest, crushed tomatoes, basil, and salt and pepper to taste.
Bring to a boil, then reduce heat and simmer for 30 minutes. When liquid has reduced, transfer to a blender and puree, or use a hand blender to puree. When soup is smooth, fold in the heavy cream. Keep warm on the stove.
To serve, garnish with chives, bacon, and fresh croutons.