Melt butter in saucepan.
Cover; cook over low heat until tender and lightly coloured, about 25 minutes.
Add carrots and stock; bring to a boil.
Cover; simmer until carrots are very tender, about 30 minutes.
Pour soup through a strainer and transfer the solids to a food processor or blender.
Add 1 cup of the cooking stock and process until smooth.
Return the puree to the saucepan and add the orange juice and 2 to 3 cups of additional stock, until soup is of desired consistency.
Season to taste with salt and pepper; add orange zest.
Simmer until heated through.