I do not know much about South America which is why I am here. Since most were colonies, mixtures of many races and cultures and nearly all spoke the same language, how did it end up with so many countries? What separated them from each other?
I believe the answer can be distilled to Cultural; Geographical; and Historical and Logistical reasons:
South America was initially divided into the Spanish and Portuguese speaking parts by the Treaty of Tordesillas. The Portuguese part is Brazil, the Spanish part consists of most of the rest of South America.
The Spanish part was subdivided into New Granada (north), Peru (center), and La Plata (south).
The Andes Mountains subdivided each of these parts; e.g. Venezuela and Colombia in New Granada, Peru and Bolivia in the center, and Chile from the rest of La Plata in the South. The La Plata river itself spawned three countries around major cities: Asuncion (Paraguay), Montevideo (Uruguay), and Buenos Aires (Argentina.
The independence of New Granada was won by Simon Bolivar of modern Venezuela, of the south by Jose San Martin of modern Argentina, and of Peru, jointly between the two. Not even the "common" liberators was enough to keep the geographically separated pieces from going their separate ways.