I understand that Imperialism has a certain character that distinguishes it from Colonialism, that it exists to uphold the military export of finance capital. However, this doesn't really tell us about colonialism and how it arises, just how imperialism is different from it. Is colonialism exclusive to capitalist nations? Can it arise in socialist or even feudal nations?
My understanding is that colonialism involves settlement, whereas imperialism remains purely extractive.
Another way you could put it, is that imperialism is extraction/theft of the land labor, and natural resources of a weaker country by a stronger one, while colonialism is a tactic or strategy to carry out the above, by establishing colonies / bases of power inside the attacked country.