Place diced potatoes, onions, celery and ham in a pot, cover with broth and cook for 10-15 minutes until vegetables soften.
Melt the butter in a saucepan, add flour, mix thoroughly and cook for 1 minute. Pour in milk slowly and cook for 5 minutes until thickened, stirring constantly with a whisk so that no lumps form.
Pour the sauce into the soup, stir. Season with salt and pepper to taste, serve.