Родился 18 ноября 1921 года в селе Полозово Пермской губернии, ныне Большесосновского района Пермского края, в крестьянской семье Пикулевых. Отец М.П. Одинцова Петр Федорович служил в следственных органах ОГПУ и НКВД, мать работала лаборантом. Русский.
В 1937 году окончил семь классов школы № 36 города Свердловска и поступил в Свердловский строительный техникум, который вынужден был оставить после первого курса из-за отсутствия средств (15-летнему, живущему с матерью, стипендия не полагалась). В 16 лет поступил на Свердловский завод «Уралобувь», где освоил 6 типов станков, в 16 лет стал знатным рабочим.
Одновременно занимался в городском аэроклубе, который окончил в 1938 году с отличием.
В Красной Армии — с 1938 года.
Учитывая исключительные летные навыки и неоднократные личные просьбы, Одинцов М.П. был в неполные 17 лет принят на военную службу и дал Воинскую присягу, был принят в Пермскую военную школу пилотов. Окончив курс через год, Одинцов М.П. отказался от места инструктора, ускоренно был выпущен и направлен в Энгельсскую военную школу лётчиков. В мае 1940 года окончил училище, Одинцову М.П. было присвоего звание младший лейтенант, и он был назначен в 62-й авиационный разведывательный полк, оснащенный самолетами СБ.
С октября 1940 года — летчик, командир лётного экипажа в 126-м ближнем бомбардировочном полку, оснащенном самолетами Су-2.
Член ВКП(б)/КПСС с 1943 года.
На фронтах Великой Отечественной войны с июня 1941 года. Первый боевой вылет произвёл 23 июня 1941 года. В одном из боев Су-2 Одинцова М.П. получил повреждения, Одинцов М.П. и штурман Червинский были ранены, при вынужденной посадке оба получили тяжелые травмы. Одинцов М.П. после семи месяцев в госпитале, получив заключение военно-медицинской комиссии о негодности к летной и временной негодности к строевой службе вообще, самовольно явился в свой полк, и более года летал, бинтуя руку. Освоил самолет Ил-2, на котором воевал до Победы.
Одинцов М.П. один из первых летчиков, установивший в перегрузку дополнительную бронезащиту для воздушного стрелка. Воздушный стрелок сержант Дмитрий Никонов был в экипаже Одинцова более 3 лет, не был ранен, награжден Орденом Красной Звезды, Орденом Славы III степени и многими медалями, что является редкостью для воздушных стрелков Ил-2; в воздушных боях Никонов сбил 7 истребителей и 1 бомбардировщик, что является лучшим показателем среди воздушных стрелков штурмовой авиации.
Воевал на Брянском, Степном, Сталинградском, Воронежском, Калининском и 2-м Украинском фронтах.
Командир эскадрильи 820-го штурмового авиационного полка кандидат в члены ВКП(б) старший лейтенант М. П. Одинцов к сентябрю 1943 года совершил 96 успешных боевых вылетов, нанеся противнику значительный урон в живой силе и технике. Действия М.П. Одинцова всегда отличали храбрость, высокое пилотажное и тактическое мастерство. Так, в одном из вылетов в 1942 году М.П. Одинцов прикрыл своим самолетом от атака истребителя самолет командира полка, и в последовавшем воздушном бою сбил два истребителя Bf.(Me)-109. В представлениях на награждения Одинцова М.П. неоднократно указывалось, что он «является мастером вождения больших групп самолетов».
За время войны Одинцова М.П. сбил в воздушных боях 14 самолетов противника, что является наивысшим достижением среди летчиков-штурмовиков.
М. П. Одинцов к концу войны совершил 215 , завершил войну в звании гвардии майора.
Командир Одинцова, командир 155-го гвардейского штурмового авиаполка Герой Советского Союза гвардии подполковник Чернецов Г.У. в рапорте от 08.06.1945г. дал следующую характеристику боевого пути Одинцова:
«За период участия в Отечественной войне тов. Одинцов совершил 215 боевых вылетов, из них на самолете Су-2-13, на Ил-2-202.
Участвуя в боях с врагом на Юго-Западном фронте с 22.06.41 г. по 31.07.41 г., тов. Одинцов на самолете Су-2 произвел 8 боевых вылетов. Принял неравный бой с истребителями противника, был тяжело ранен, но, несмотря на большую потерю крови, изнемогая от боли, мужественно довел свой самолет до аэродрома и благополучно произвел посадку.
Вернувшись в строй воздушных бойцов, тов. Одинцов снова, участвуя в боях с врагом на Юго-Западном фронте с 15.05.42 г. по 16.07.42 г., совершил 8 успешных боевых вылетов на штурмовку войск и техники противника.
30.05.42 г., участвуя в налете на Курский аэродром, лично уничтожил на земле 2 самолета типа Ю-88, подавил огонь 7 точек ЗА и на железнодорожной станции уничтожил 1 паровоз и 6 вагонов.
6.07.42 г. при выполнении боевого задания, защищая своего ведущего командира, вступил в бой с четырьмя Me-109. Как верный сын Родины, проявил мужество и героизм в этом бою, лично сбил два Me-109.
На Калининском фронте в составе 800 ШАП с 16.10.42 г. по 18.03.43 г. тов. Одинцов совершил 44 успешных боевых вылета на самолете Ил-2.
Штурмовыми действиями на Белыйском, Великолукском и Демянском направлениях лично уничтожил: танков — 6, автомашин с войсками и грузами — 20, подавил огонь 13 батарей ЗА, взорвал склад боеприпасов и истребил 250 гитлеровских солдат и офицеров.
За отличное выполнение боевого задания 3.11.42 г. по разгрому немецких танков, окружавших наши войска в районе г. Белый, в результате чего была создана возможность выхода наших войск из окружения, тов. Одинцов получил благодарность от командующего Калининским фронтом.
С 27.03.43 г. по 27.07.43 г., работая командиром эскадрильи, в составе 800 ШАП на Белгородском направлении Воронежского фронта тов. Одинцов произвел 16 успешных боевых вылетов на уничтожение матчасти, самолетов на аэродромах и штурмовку живой силы и техники наступающего противника.
Произведенными боевыми вылетами лично уничтожил 4 самолета на аэродромах, 6 танков, 11 автомашин с грузами и истребил 100 солдат и офицеров противника.
За этот же период эскадрилья под командованием тов. Одинцова произвела 165 боевых самолето-вылетов, каковыми уничтожено: на аэродромах противника — 13 самолетов, сбито в воздухе — 3 самолета, уничтожено танков — 15, автомашин с войсками и грузами — 150, взорвано 3 склада с боеприпасами, 2 склада с горючим, подавлен огонь 6 зенитных батарей, уничтожено и повреждено 18 орудий полевой артиллерии и истреблено 750 солдат и офицеров противника…
За произведенный 31 успешный боевой вылет при форсировании р. Днепр и взятии (освобождении) городов Кировоград, Знаменка, Александрия, за лично уничтоженные 4 танка, 15 автомашин и много другой техники противника награжден третьим орденом Красного Знамени.
Орденом Александра Невского награжден за мужество и отвагу, проявленные при вождении групп штурмовиков 6-8 Ил-2 в направлении Яссы и на Львовском направлении.
23 раза водимые им группы отлично выполняли боевые задания, за что весь состав групп неоднократно получал благодарности от командира корпуса, дивизии и командования наземных войск.
Проявил себя мастером вождения групп штурмовиков, смело выполняющих боевые задания командования.
За отличное применение радиосвязи в 171 боевом вылете, за получение звания мастера воздушной радиосвязи награжден орденом Отечественной войны II степени.
Тов. Одинцов, участвуя в операциях по уничтожению группировки в районе Корсунь-Шевченковский, в боях под городами Яссы и Кишинев, при взятии города Львова, форсировании рек Сан и Вислы, совершил 57 боевых вылетов. 34 раза водил группы штурмовиков, участвуя в боях за город Львов и расширение плацдарма на левом берегу реки Вислы.
31 боевой вылет совершил на штурмовку вражеских войск и техники в период Кросненской операции в боях на Сандомирском направлении, на подступах к городу Бреслау и с 12.01.45 г. в наступательной операции войск 1-го Украинского фронта.
30.05.44 г. группой 9 Ил-2 наносил бомбардировочно-штурмовой удар по танкам и автомашинам противника в районе Чужа Вода, Развул. Выполнению боевого задания препятствовали 6 истребителей противника типа ФВ-190. Несмотря на атаки вражеских истребителей, группа штурмовыми действиями уничтожила 3 танка, 2 бронетранспортера, создала один очаг пожара, в воздушном бою сбит один ФВ-190.
15.07.44 г. группа 9 Ил-2, ведомая гвардии майором Одинцовым, имела задачу штурмовать и бомбардировать танки, автомашины и живую силу противника в районе населенных пунктов Золочев, Плугов (Львовское направление). Район цели прикрывался сильным огнем зенитных батарей врага. Несмотря на это, добиваясь эффективности выполнения поставленной задачи, тов. Одинцов смело ринулся в атаку. В результате штурмовых действий уничтожено 5 автомашин и создан крупный очаг пожара в местах сосредоточения фашистской техники, сопровождавшийся взрывами.
21.07.44 г. гвардии майор Одинцов вел 18 Ил-2 на штурмовку танков и живой силы противника в район Полесья, Белый Камень (Львовское направление). Сколоченность группы, несмотря на плохие метеоусловия, способствовала отличному выполнению задания. Снижаясь до бреющего полета, группа пулеметно-пушечным огнем уничтожила 15 автомашин с разными грузами и в лесу, восточнее пункта Полесья, создала крупный очаг пожара.
11.08.44 г. тов. Одинцов ведущим 4 Ил-2 шел штурмовать и бомбардировать танки и живую силу противника в районе Дроговля, Ксензя-Нива. Враг, стягивая свою живую силу и технику, пытался контратаковать наши части. Тов. Одинцов с честью героя выполнил эту боевую задачу. В результате штурмовых действий 3 танка оказались сожженными, разрушено 10 домов и на окраине пункта Дроговля создан сильный взрыв. За отличные боевые действия майор Одинцов и летчики его группы от заместителя командующего 1-м Украинским фронтом получили благодарность.
С 1.07.44 г. по 27.11.44 г. гвардии майор Одинцов, работая штурманом полка, отлично водил группы штурмовать на самые сложные и ответственные боевые задания. Тов. Одинцов является участником освобождения городов Ельс, Лигниц Домбровского угольного бассейна и города Бунцлау, участник знаменательных боев за города Форст, Котбус, Берлин, Потсдам и Дрезден.
Весь этот путь, пройденный тов. Одинцовым, полон героических примеров, воодушевлявших на подвиги остальной летный состав.
Преследуя отходящие в Карпаты войска противника, тов. Одинцов, получив задачу нанести бомбардировочно-штурмовой удар по технике и живой силе противника в опорном пункте Качковце, вылетел в указанный район в качестве ведущего группы штурмовиков в атаку, несмотря на сильный огонь зенитных батарей врага. В результате эффективных штурмовых действий, подтвержденных фотографированием, группой в этом вылете уничтожено 1 танк, 2 автомашины, подавлен огонь 3 орудий полевой артиллерии и взорван склад боеприпасов.
Особенно отличился в проведенной операции войск 1-го Украинского фронта, где, несмотря на плохие метеоусловия, сильное противодействие зенитной артиллерии, тов. Одинцов взламывал оборону противника.
24.01.45 г. ведущим группы 9 Ил-2 тов. Одинцов нанес бомбардировочно-штурмовой удар в районе станции Бубрек, где прямым попаданием уничтожено 3 железнодорожных вагона, и в городе Беутен поврежден завод.
На подступах к Берлину враг, пытаясь удержаться и отсрочить час своей гибели, оказывал упорное сопротивление продвижению наших войск. Получив задачу, тов. Одинцов 26.04.45 г. повел группу 18 Ил-2 на штурмовку скоплений техники и живой силы противника в районе населенного пункта Холбаф. Штурмовыми действиями группа в этом вылете сожгла 12 автомашин с грузом и истребила 30 солдат и офицеров.
Верный своему долгу, храбро истреблял фашистскую нечисть. За умелое вождение групп штурмовиков, за эффективность выполнения боевых заданий, за лично произведенные боевые вылеты имеет ряд благодарностей от наркома обороны Маршала Советского Союза товарища Сталина, от командования наземных войск и авиасоединений…»
Многие боевые эпизоды из военной жизни Одинцова и его однополчан, среди которых 6 Героев Советского союза, описаны им в книге «Преодоление», изданной в 1987г., где повествование ведется от имени летчика Ивана Сохатого, в котором угадываются все черты самого Одинцова.
За время войны занимал должности летчика, командира эскадрильи 820-го штурмового авиационного полка 292-й штурмовой авиационной дивизии 1-го штурмового авиационного корпуса 5-й воздушной армии Степного фронта; заместителя командира 155-го гвардейского штурмового авиационного полка 9-й гвардейской штурмовой авиационной дивизии 1-го гвардейского штурмового авиационного корпуса 2-й воздушной армии 1-го Украинского фронта.
После войны продолжал службу в ВВС СССР. В 1948 году поступил в Военно-воздушную академию, перед этим экстерном освоив программу сверх программы 7-летней школы. В конце 1948 году в связи с обострением нефрита был госпитализирован на 4 месяца, признан инвалидом и по заключению военно-медицинской комиссии признан негодным к летной службе, списан с летной работы. В связи с этим добился разрешения на перевод на военно-воздушный факультет Военно-политической академии имени В.И. Ленина, которую окончил в 1952 году с отличием. За время учебы продолжал физические и технические тренировки и в 1950 году вновь признан годным к полетам без ограничений.
В послевоенное время освоил самолеты Пе-2, Ту-2, Ту-4, Ил-28, последний с личным налетом 620 часов, Су-7,Миг-15, Миг-17, Су-17, МиГ-21, Миг-23, Ту-16, Ту-22, Су-24, вертолеты Ми-2, Ми-4, Ми-8, Ми-24 и другую авиатехнику. В одном из тренировочных полетов в 1974 году серийный истребитель-бомбардировщикгенерал-лейтенанта Одинцова М.П. попал в плоский штопор, из которого самолет вывести не удалось, на высоте 600 метров Одинцов М.П. катапультировался; по записи докладов о мерах по выводу самолета из штопора и при личном участии Одинцова М.П. в конструкцию самолета были внесены изменения.
В 1959 году окончил Академию Генерального штаба ВС СССР с отличием. Командовал авиационным полком, дивизией и авиацией Московского военного округа, был одним из первых начальников Центра подготовки космонавтов (в 1963 году), советником ВВС Войска Польского. В 1976—1981 годах — генеральный инспектор ВВС Главной инспекции Министерства обороны СССР, в 1981—1987 годах — помощник представителя главнокомандующего Объединенных вооруженных сил государств-участников Варшавского Договора в Войске Польском.
Избирался депутатом Киевского горсовета депутатов трудящихся, Ростовского облсовета и членом Ростовского обкома КПСС, а также Моссовета.
Избирался делегатом XXIV и XXV Съездов КПСС.
Женат, жена — Люхтикова Галина Анисимовна, дочь генерал-майора Люхтикова А.С. Трое детей. Сыновья Дмитрий (в честь воздушного стрелка Никонова) и Сергей (в честь ведомого С.Бабкина), дочь Марианна (в честь матерей Анны и Марии).
Написал несколько книг — роман «Испытание огнем» (1979г.), «Записки летчика» и «Преодоление» (1982г.), большое количество статей в «Авиации и космонавтике», «Крылья Родины», «Военных знаниях», газете «Красная Звезда»,
С 1987 года М. П. Одинцов находился в отставке. Жил в Москве, где умер 12 декабря 2011 года. Похоронен на Троекуровском кладбище.
В 2013 году вышла книга посвящённая Одинцову Михаилу Петровичу «Сильный духом». Книга издана по заказу Пермского краевого отделения МОФ «Российский фонд мира» при поддержке Администрации губернатора Пермского края, З.Р. Козловой, А.А. Мусихина и Т.С. Селетковой.