Михаил родился 21 ноября 1914 года в деревне Крюково (ныне Грязовецкого района Вологодской области).
Окончив Сидоровскую семилетнюю школу и областные учительские курсы, с 1931 по 1935 год работал учителем Паршинской начальной школы. Затем счетоводом колхоза имени Ворошилова в своем районе.
В 1936 году был призван в ряды Красной Армии. В 1940 году М. А. Самарин окончил Ярославское военно-хозяйственное училище Рабоче-Крестьянской Красной Армии (ныне Военная финансово-экономическая академия), получив звание лейтенант-интендант, и стал в нём преподавать.
С первых дней Великой Отечественной войны лейтенант Самарин подал несколько рапортов с просьбой направить его на передовую. После окончания курсов «Выстрел» он в конце 1942 года направляется на фронт. В действующую армию Самарин попал в феврале 1943 года. Вначале был заместителем командира, потом командиром батальона 983-го стрелкового полка 253-й стрелковой дивизии.
22 сентября 1943 года батальон Самарина, под прикрытием артиллерии, начал форсирование реки Днепр. Капитан М. А. Самарин, первым переправившись со своим подразделением, повёл его в атаку и оттеснил противника, создав плацдарм для дальнейшего наступления советских войск. Несмотря на неоднократные, ожесточённые атаки противника, его батальон прочно удерживал занятый рубеж.
10 октября 1943 года М. А. Самарин погиб в бою. Похоронен в братской могиле у школы села Ходорово Киевской области.