Империи распадались по разным причинам: экономические, политические, военные. Римская вот распадалась постепенно в несколько этапов из-за ослабления центральной власти и нарастания противоречий. А индейские империи были просто завоёваны европейцами.
Но основная причина всё-таки всегда экономическая: пока у метрополии есть средства, она может держать колонии в узде, и, как ни странно, им тоже это может быть выгодно. Так, по некоторым оценкам на заре нашей эры Израиль был на пике подъёма. Хотя многим евреям и не нравилась власть римлян, но защищённый метрополией перекрёсток торговых путей и должен был жить неплохо.
Также многие периферийные территории Российской империи, а потом и СССР, получали от этого преимущество. Всё окончательно рухнуло, когда деньги от нефти и газа кончились. Хотя и не совсем окончательно.
Принято считать, что колониализм в середине прошлого века потерпел поражение из-за нарастающего народно-освободительного движения, но скорее всего в итоге просто цена владения колониями стала слишком большая: гораздо проще уйти, а потом им туда товары продавать, чем оставаться и терпеть убытки от необходимости содержать территорию.
Это ещё вопрос что больше повлияло на решение Великобритании покинуть Индию: М.Ганди или экономические проблемы.
Интересно, что неумение просчитывать элементарную экономику и издержки до сих пор проводит многих наших сограждан к мысли, что "Запад" хочет нас завоевать.