Нередко в устной или письменной речи мы пользуемся этими словами в качестве синонимов, хотя, безусловно, их семантические различия весьма велики.
«Веха» звучит более литературно, «эра», скорее, охватывает более глобальные промежутки времени, а вот «эпоха» среди данной троицы выглядит понятием наиболее универсальным.
Но попробуем разобраться в данном понятийном аппарате, отталкиваясь не от интуитивного чувства языка, а от более точных определений терминов.
Эпоха - это период времени, который характеризуется определёнными событиями или явлениями, часто, хотя и далеко не всегда, имеет привязку к деятельности конкретной личности (например, эпоха «Великих реформ» Александра II). Если говорить о категории протяженности эпохи, то нельзя выделить верхней планки для её характеристики: эпоха может длиться как несколько миллионов лет (например, геологические эпохи, Плейстоцен или Голоцен), так и несколько сотен лет/десятилетий/лет (эпоха Возрождения, эпоха дворцовых переворотов, эпоха НЭПа).
В рамках общепринятой хронологии эпоха относится к категории периода, меньшего чем эра.
Понятие эры в хронологии может иметь два разных определения:
1) это либо категория глобальных геологических периодов, которые включают в себя более дробное деление на периоды и эпохи (например, Кайнозойская эра включает в себя четвертичный период, к которому относится эпоха Плейстоцена)
2) либо это начальный момент для новой системы летоисчисления, коих в истории целое множество - христианская эра, эра Диоклетиана, мусульманская эра (Хиджра) и др.
Наконец, самой «маленькой» хронологической категорией, из представленных в вопросе, является веха.
Веха - это наиболее значимое событие в истории или развитии некоторого процесса. Например, «выделим основные вехи в истории становления крепостного права в России: судебник Ивана III, введение заповедных и урочных лет, повышение срока сыска беглых крестьян, Соборное уложение Алексея Михайловича - все это значимые вехи в истории формирования сложного социально-экономического явления».
*В контексте разговора о хронологических вехах, весьма интересна этимология данного слова. Оно образовано от общей праиндоевропейской основы, которая встречается в большинстве языков индоевропейской семьи - начиная от славянских (véha, wiecha, vich и пр.), заканчивая скандинавскими и романскими (vese, vis, virga и пр.), в каждом из которых это слово имело значение чего-то вроде «пучка/ветки/прутика/вязанки», что могло стать ориентиром для путника в дороге. Так и в истории вехи являются своеобразными ориентирами на пути изучения того или иного явления или процесса :)