Heat the oil in a large saucepan. Add the bacon, chicken and onions, and cook over low heat for 3 minutes. Increase the heat and cook for a further 5 minutes, stirring the ingredients occasionally and turning the chicken once, until the chicken is pale golden-brown in colour.
Add the potatoes and cook for a further 2 minutes, stirring constantly. Pour in the stock, then add the thyme and pepper. Bring to the boil. Reduce the heat, cover the pan, and leave to simmer for 30 minutes.
Using a slotted spoon, transfer the chicken to a plate. Remove and chop the meat and discard the bone, if necessary. Return the chicken meat to the soup. Stir in the milk and reheat the soup gently without boiling.
Ladle the soup into bowls, garnish with chopped parsley or parsley and thyme and serve.