OP here. I'll write down what I've been able to come up with so far thanks to all your help.
>>15735661 has been especially helpful with starting pointers and the information
>>15735783 's links is just staggering. Let me know what you think!
First of all, the geography/climate surrounding the city is good. It lies near the foot of a mountain chain and there's a river running through it. The rain shadow from the nearby mountains ensures that the land in the area is very fertile.
The city started as a trading post, mostly for goods and resources from the nearby Dwarven city/mining colony. It attracted people from neighboring areas (there was quite a bit of money to be made, along with lots of fertile farmland) and those people attracted even more people, eventually forming a village. After several years of prosperity, they built a dock near the river so the Dwarves could transport their goods more easily. Craftsmen started settling there too, working with the raw resources the area provided and exporting their products further down the river. The local marketplace flourished, giving rise to banks and an upper class.