Борис Панин родился в Нижнем Новгороде в рабочей семье. Учился в школе № 4 Советского (сейчас Нижегородского) района, увлекался спортом, мечтал стать летчиком. После окончания 7 классов, работал на заводе имени М. В. Фрунзе. Сначала учеником слесаря, а потом слесарем в механическом цехе № 5. С 1938 по 1940 год учился в Горьковском аэроклубе имени Баранова.
В 1940 году был призван в армию. В 1941 году окончил Энгельсскую военную авиационную школу лётчиков.
С октября 1942 года участвовал в Великой Отечественной войне, был лётчиком, а затем командиром звена 321-го (с марта 1943 — 82-го гвардейского) бомбардировочного авиационного полка. На фронте вступил в партию. Сражался на Калининском, Волховском, Северо-Западном и Воронежском фронтах. Участвовал в оборонительных боях в Калининской области, прорыве блокады Ленинграда, в Курской битве.
Панин летал на пикирующем бомбардировщике Пе-2 и был одним из лучших летчиков соединения. Одним из первых он выполнил на Пе-2 фигуру высшего пилотажа «бочка», продемонстрировав возможность использовать бомбардировщик в качестве истребителя. Его инициатива вдвое увеличить бомбовую нагрузку нашла последователей среди других летчиков.
7 марта 1943 года при бомбометании по скоплению танков и пехоты противника группа самолётов Пе-2 попала под сильный огонь зенитной артиллерии. Панин, выйдя из строя, спикировал и подавил огонь двух батарей, обеспечив нашим самолётам выполнение задания без потерь.
8 мая 1943 года, выполняя задание по фотографированию Харьковского аэроузла противника, самолёт Панина 11 раз подвергался атакам истребителей противника. Экипаж Панина сбил один немецкий самолёт и, оторвавшись от преследования истребителей, вернулся к объекту, сфотографировал вражеский аэродром и благополучно вернулся на базу.
17 июня 1943 года Панин победил в бою против четырёх истребителей противника, 12 раз атаковавших его бомбардировщик. Один истребитель был сбит, и, выполнив задание, Панин благополучно вернулся на свой аэродром.
К августу 1943 года Панин совершил 57 боевых вылетов на бомбардировщике Пе-2 на бомбардировку важных объектов противника (из них 25 вылетов одиночно на разведку и фотографирование в интересах артиллерийского командования). Сбил 3 вражеских самолёта.
4 августа 1943 года Борис Панин и члены его экипажа — штурман Д. М. Адамянец и стрелок-радист В. П. Ермолаев — участвовали в освобождении Белгорода и погибли при выполнении боевого задания.
За мужество и героизм, проявленные в боях с немецко-фашистскими захватчиками, Указом Президиума Верховного Совета СССР от 2 сентября 1943 года гвардии лейтенанту Панину Борису Владимировичу присвоено звание Героя Советского Союза (посмертно). Приказом министра обороны СССР от 27 декабря 1957 года его имя навечно занесено в списки гвардейской авиационной части.
Похоронен в селе Иловка Алексеевского района Белгородской области в братской могиле 109 советских воинов, погибших в боях с фашистскими захватчиками.