Тому несколько причин.
Многие бегут от сложностей жизни, от ответственности, от постоянного стресса и постоянно беготни, суеты, которой заняты горожане. В деревнях тоже такое есть, но у тех, обычно, бывает крыша над головой и хоть какой-то участок, на котором они вяло выращивают картошку, периодически они подрабатывают на хлеб или водку, т.е. хоть что-то, но делают.
В города, в некотором смысле, с едой проще.
Человеку, вообще, мало надо. Это для жизни что-то нужно, для хорошей жизни надо много, а для существования многого не надо. Учитывая, сколько у нас выбрасывается продуктов, просроченных, но еще съедобных и неиспорченных, сколько всего не доедается, сколько выбрасывается бутылок и банок, которые можно обменять на водку, смерть от голода бездомным не грозит. И, в большинстве случаев, отравление - тоже.
Что касается крыши над головой, то даже в столице множество заброшенных зданий. Немного картона, обломки строительных материалов, выброшенных стекол или фанеры и появляется место, которое можно сравнить с зимней палаткой, где имея необходимое количество тряпья замерзнуть не грозит. Плюс теплотрассы, метро, подвалы и чердаки и т.д.
Сейчас медики стали устраивать наполовину показательные, наполовину реальные медосмотры бомжей, что можно сравнить с медобслуживанием в деревнях до 20-го века.
Так что это только вопрос психологии. Кто-то бежит от трудностей жизни в деревню, кто-то в тайгу, кто-то остается в городах. каждый выбирает по себе...