Where Moscow is concerned, your first example is idiomatic (regardless of whether you are referring to the size of the population or the extent of the city). That's how most people would construct the sentence.The other two are grammatically correct but unusually phrased.
Native English speakers would be unlikely to use them except in certain hypothetical contexts such as: Moscow is smaller than the vast metropolis on the moon but it is bigger than other cities in the world.
Where John's height is concerned, both examples are correct and idiomatic but likely to be used in slightly different contexts, for example:
John is taller than other boys of his age
John is taller than any other boy in his class
The choice here is a matter of nuance and preference.