In the UK:
A CITY has a cathedral or a university or both. A TOWN has a market
A VILLAGE doesn’t have a cathedral or a market but it will have a church
A HAMLET is very small with only a handful of houses and usually doesn’t have any shops or other services.
A Hamlet is a small settlement that does not contain a place of worship.
It becomes a village when a church is founded.
A village becomes a town when an administrative body exists, e.g. a Town Council, by which time several differing denominations of Church might exists.
A city is anywhere with a Cathedral.
In the USA:
Generally in the urban heirarchy, villages are smaller than towns and towns are smaller than cities but each country has its own definition of a city and an urban area.
Usually:
Hamlet - 1,000 - 9,999
Village - 10,000 - 99,999
Town - 100,000 - 999,999
City - 1,000,000 - 9,999,000
Metropolis - 10,000,000+