Melt the butter in a large pan with a splash of oil, add the sliced shallots, garlic and celery, sauté until translucent. Add the artichokes and a pinch of salt and cook, covered, over a medium heat for about 15-20 minutes, until the artichokes are cooked but not coloured.
Add the milk and vegetable stock, then cover with a tight-fitting lid and bring to boil. Reduce the heat slightly and simmer for 10-15 minutes.Blitz the soup in a blender and then adjust the seasoning to taste and pour back into the pan to re-heat.For the parsley topping, mix the garlic, parsley and lemon zest in a bowl.
Pour the soup into deep bowls, scatter over the parsley mixture and drizzle with olive oil and scatter the chanterelles. Serve with crusty bread.