Melt butter over medium heat. Stir in flour until there are no lumps. Add chicken broth a little at a time, stirring at the same time.
Add in potatoes and cubed ham to the soup and cook over low heat for about 30 minutes, or until potatoes are tender. Pour in heavy cream, and cook for an additional 5-10 minutes.
Soup can be cooked for longer, just reduce heat to low.