It's harder to comprehend the distinctions between a village and a hamlet than, say, between a village and a metropolis. Nonetheless, the differences are pretty obvious once you are familiar with their respective meanings.
So let's start with a definition of each before examining the differences between a village and a hamlet.
A village is a small community of homes with a church in British slang. They typically live in rural locations and have small numbers.
There are urban villages and villages with a population of over 10,000, thus this description isn't exact.
Through Frankish, Hamlet makes his way from Old French to English. It derives from the Frankish term ham, which means village, and the Old French word hamlet, which means tiny village. The terms "village" and "hamlet" first appeared in usage in the 14th century, a time of transition in the English government. Because it was a question of distinction, hamlet simply refers to a "small village" for this reason.
Giving one unique answer is impossible. Everything changes according to time and space. For instance, in the XVIIIth century English market towns could own less than 800 inhabitants, and estate towns were smaller. in the same time, in the South of Italy were huge towns destitute of any urban function. For a général survey, see, in French : "Histoire de l'Europe urbaine", éditions du Seuil. Olivier Zeller
This also depends on do you want to find an official definition for them (i.e. 'statistical') or e.g. how people conceive them. If former, they are very often country-specific (e.g. the population limits for them), so there is no unambiguous answer from this point of view.