Place the chicken into a large pot with the breast side down. Fill with enough cold water to reach about 10cm from the top of the pot. Add the onion, carrot, parsnip, celery and dill. Bring to a simmer over medium heat and cook partially covered for 2 hours. Do not let the soup boil. Skim any fat from the top of the soup and add the garlic cloves. Partially cover and simmer for another 2 hours for best flavour.
In a medium bowl mix together the matzo meal, eggs, oil, salt and 1/4 cup of the broth from the chicken soup. Refrigerate for about 20 minutes to set.
Bring a separate pot of water to a rolling boil. Roll the matzo mixture into about 16 balls. Wet your hands to keep the dough from sticking to them. Drop the balls into boiling water, cover and cook for about 35 minutes.
While the matzo balls are cooking strain the broth from the chicken soup. Return the broth to the pot. Remove the bones and skin from the chicken and cut into pieces. Return to the soup or leave the soup as a broth and reserve the chicken for other uses. Remove the matzo balls from the water and serve in the hot chicken soup.