Peel and finely chop the onion. Wash, peel and dice carrots, celery and potatoes. Heat oil in a pot. Sauté potatoes, onion, celery and carrots for 1-2 minutes, then deglaze with broth and milk.
Simmer soup covered at medium heat for about 20 minutes. Blanch the beans in boiling salted water for about 7 minutes. Wash parsley, shake dry. Cut the leaves into thin strips.
Briefly puree the soup with a blender to bind it. Add beans, ham and half of the parsley strips to the soup and season with salt and pepper. Arrange the soup in deep plates and sprinkle with the remaining parsley.