Place chicken carcass (and any leftover skin and meat and other bones) in a large pot and cover with cold water. Add bay leaf and bring to the boil. Reduce heat and simmer 60 to 90 minutes. Remove from heat, cool slightly and strain. Remove chicken meat from carcass and chop into bite-size pieces.
In a large saucepan over medium heat, melt butter. Cook onion and shallots in butter until translucent. Pour in strained stock and chicken meat and stir in stock, parsley, salt, pepper, potatoes and sweetcorn. Simmer 15 minutes, until potatoes are cooked and sweetcorn is tender. Remove from heat and stir in cream.