Because serving size varies based on how the ham is served and who is eating it, a 10-pound ham feeds anywhere from 14 to 30 people. The upper range is typically for a buffet with many other choices. During a ham dinner where the meat is the primary offering, fewer people are served.
Compared to other meats, pound-for-pound, ham generally serves fewer people because of the bone. One way to avoid excessive waste due to this is to purchase a prepared spiral-sliced ham. This is much simpler than do-it-yourself carving. A pre-sliced ham presents neat, whole slices that make serving easy.