Едва рассвело битва началась. Полковник Александр Пистолькорс, командовавший авангардом, под крики «ура» повел своих солдат в атаку на левый фланг неприятеля. Атаку поддержала артиллерия: «Бичуя воздух, звеня и дребезжа, пронеслась картечь высоко над белыми кепи пехотинцев» – напишет позже Каразин в своём очерке «Зарабулакские высоты». Казаки ударили по центру. Не ожидавшие такого напора бухарцы дрогнули и стали в беспорядке отступать. Однако, вскоре оправились, построились и стали отходить организовано, тем не менее неся большие потери. Постепенно отступать стала вся армия Музаффар-хана, бросая оружие и боеприпасы.
Каразин вспоминает: «Вот в эту-то минуту наши крикнули „ура“ и бегом бросились за отступающими. Скоро всё скрылось и перемешалось в массах зелени. Отдельные выстрелы, недружные, урывчатые крики: ура! вопли: ур! ур! и мусульманская ругань, – все слилось в какой-то дикий хаос звуков, и только отчетливый огонь наших винтовок да резкие, дребезжащие звуки сигнальных рожков, подвигаясь все далее вперед и вперед, указывали приблизительно направления, по которым шли штурмующие роты. Здесь уже нельзя было видеть ничего общего, все распалось на отдельные эпизоды…»
К 10 часам утра все было кончено, высоты были полностью заняты армией Кауфмана. В числе трофеев оказалось артиллерийское орудие и 40 вьючных ящиков со снарядами.
Дорога на Бухару была открыта, а сам Музаффар собирался бежать в Хорезм, но тут до Кауфмана дошло известие, что у него в тылу неожиданно образовался очаг сопротивления.
30 апреля 1868 года отряд выступил в направлении Самарканда.
Картина Н. Н. Каразина «Сражение на Зерабулакских высотах»
Пока основные силы Кауфмана были в походе к Самарканду подошли отряды шахризябцев под командованием Джура-бека и Баба-бека. В Самарканде вспыхнуло восстание и малочисленному гарнизону, оставленному в городе, пришлось выдержать девять дней непрерывного штурма. Узнав об этом Кауфман немедленно поспешил на выручку осажденным и 8 июня вступил в Самарканд. Шахризябцы бежали, и вскоре между Бухарой и Российской империей был заключён мирный договор.
Куропаткин во время похода, отнюдь не отсиживался в штабе, а в первых рядах участвует во всех боевых действиях – Зеравшанском сражении, штурме Зерабулакских высот и деблокировании самаркандской цитадели. Отвага и героизм поручика Куропаткина не осталась незамеченной. За Зерафшанский поход он был отмечен двумя орденами – Св. Станислава и Св. Анны 3-й степени и уже через год ему присваивается чин штабс-капитана.