In Danish, does one differentiate between "town" and "city" ?
Nope, you may see "stad" in more historical texts describing a city (hence the Danish hovedstad meaning "capital city"), but in modern Danish by is used exclusively for both a town and a city
Likewise French has "ville" for both "town" and "city." Sometimes tricky when translating from French to English. On the other hand, English has only one word, "river" for both "fleuve" and "rivière."
why is var translated as had why not use havde
You tipically use var as auxiliary verb in association with motion verbs, as "arrive".