Б. М. Шапошников внёс значительный вклад в теорию и практику строительства Вооружённых сил СССР, в их укрепление и совершенствование, подготовку военных кадров. Он много и успешно работал над развитием военной науки, над обобщением боевого опыта Первой мировой и Гражданской войн. Участвовал в комиссии по разработке уставов, отражая в них основные положения военной доктрины СССР. В наиболее известном труде «Мозг армии» определил основные положения о характере будущей войны, глубоко раскрыл особенности руководства армией в войне и дал чёткое представление о роли, функциях и структуре Генерального штаба как органа Верховного Главнокомандования по управлению Вооружёнными силами. Правильность его выводов подтвердила Великая Отечественная война. Б. М. Шапошников отмечается в военной истории как выдающийся военный теоретик, талантливый практик, хорошо знающий оперативно-стратегические вопросы.
Пользовался большим уважением Сталина. Борис Михайлович (наряду с Рокоссовским) был одним из немногих, к кому тот обращался по имени и отчеству, а не «товарищ Шапошников», как к остальным руководителям страны и армии. С конца 1930-х годов он был одним из главных советников Сталина по военным вопросам.
Родился в семье служащих. Отец, Михаил Петрович (ум. 1912), служил по частному найму; мать, Пелагея Кузьминична, работала учительницей. Б. М. Шапошников учился в Красноуфимском промышленном и Пермском реальном училищах.
В 1901—1903 г. Б. М. Шапошников учился в Московском Алексеевском военном училище, которое окончил по 1-му разряду и был произведён в чин подпоручика. Начал службу в 1-м Туркестанском стрелковом батальоне в Ташкенте, в 1903-1907 гг. командовал там полуротой.
В 1907—1910 гг. учился в Академии Генерального штаба (Императорская Николаевская военная академия). Произведён в штабс-капитаны. После окончания академии продолжил службу в Ташкенте, где в 1910-1912 гг. командовал ротой. В 1912 г. переведён старшим адъютантом штаба 14-й кавалерийской дивизии в Ченстохов.
С августа 1914 участвовал в Первой мировой войне в должности адъютанта штаба 14-й кавалерийской дивизии (14 ак) на Западном фронте, показал хорошее знание тактики, проявил личную отвагу. В октябре 1914 г. был контужен в голову. В январе-ноябре 1915 г. помощник старшего адъютанта разведотдела штаба 12-й армии на Северо-Западном фронте. В ноябре 1915-мае 1916 гг. начальник штаба Отдельной сводной казачьей бригады.
В сентябре 1917 года Б. М. Шапошников произведён в звание полковника и назначен на должность командира Мингрельского гренадерского полка.
В ноябре 1917 года на съезде делегатов военно-революционных комитетов был избран начальником Кавказской гренадерской дивизии. В январе-марте 1918 г. находился в госпитале.
В марте 1918 года Б. М. Шапошников был демобилизован и через 2 месяца, 22 мая, добровольно вступил в Красную Армию. С 22 мая был помощником начальника Оперативного управления штаба Высшего военного совета. С 7 сентября до конца октября 1918 года — начальник разведотдела Штаба РВСР. С 30 сентября — в Военном отделе Высшей военной инспекции РККА. С 4 марта 1919 года — первый помощник начальника штаба Наркомвоенмора Украинской ССР. С 15 августа 1919 — начальник Разведывательного отделения, а с 12 октября — начальник Оперативного управления Полевого штаба Реввоенсовета Республики.
Принимал участие в разработке плана по разгрому деникинских войск в октябре 1919 г. Один из авторов планов кампаний 1920 г. на Юго-Западном, Западном фронтах и в Крыму.
Во время Гражданской войны Шапошников разрабатывал большинство основных директив, приказов, распоряжений фронтам и армиям. В 1921 году был награждён орденом Красного Знамени.
После окончания Гражданской войны, с 1921 года — 1-й помощник начальника Штаба РККА. В 1925—1927 — командующий войсками Ленинградского, с мая 1927 — Московского военных округов. В 1928—1931 гг. — начальник Штаба РККА. В 1930 вступил в ВКП(б). С июля 1931 — командующий войсками Приволжского ВО. В 1932—1935 — начальник, военный комиссар и профессор Военной академии имени М. В. Фрунзе.
В 1935—1937 гг. вновь командовал войсками Ленинградского ВО, получив 20 ноября 1935 звание командарма 1-го ранга. С 10 мая 1937 — начальник Генштаба РККА. С августа 1940 — заместитель наркома обороны СССР. С 10 сентября 1939 по 9 апреля 1941 — член Комитета обороны при СНК СССР.
В 1937—1945 годах был депутатом Верховного Совета СССР 1-го созыва от Московской области. В июне 1937 входил в состав Специального судебного присутствия, которое осудило к смертной казни М. Н. Тухачевского, И. Э. Якира, И. П. Уборевича и других. Кандидат в члены ЦК ВКП(б) с 21 марта 1939 г. Член ЦИК СССР.
7 мая 1940 Шапошникову было присвоено звание Маршала Советского Союза. В августе 1940 по состоянию здоровья снят с поста начальника Генштаба и назначен заместителем наркома обороны СССР по сооружению укреплённых районов (УР).
В начале Великой Отечественной войны с 23 июня по 16 июля в Совете по эвакуации при СНК СССР. С 10 июля — член Ставки ВГК. С 21 по 30 июля 1941 г. — начальник штаба главкома Западного направления. С 29 июля вновь назначен начальником Генштаба РККА. При его непосредственном участии были разработаны предложения по подготовке и ведению контрнаступления Красной Армии зимой 1941—1942 гг. Был снят с поста начальника Генштаба РККА 11 мая 1942 г. после разгрома Крымского фронта под Керчью, на этой должности его сменил А. М. Василевский.
С мая 1942 по июнь 1943 г. — заместитель наркома обороны СССР. В июне 1943 назначен начальником Военной академии Генерального штаба.
Умер от тяжёлой болезни, не дожив 44 дня до Победы. После смерти в 1945 был кремирован, прах помещён в урне в Кремлёвской стене на Красной площади в Москве. Формально является единственным Маршалом Советского Союза, потерянным в ходе Великой Отечественной войны.
Жена — Мария Александровна, сын — Игорь (генерал-лейтенант инженерных войск).