Стефан Атанасов е роден на 30 ноември 1914 г. в с. Осма Калугерово, дн. Асеновци, Плевенско. Основно образование получава в родното си село. Завършва Непълната смесена гимназия в гр. Левски и Средното кожарско училище в гр. Ловеч. Деен член на РМС от 1929 г. Работи в кожарска фабрика в Стара Загора, Велико Търново, фабрика за цигли в с. Осма Калугерово и земеделие в семейното стопанство.
Участва в Съпротивителното движение през Втората световна война. Ятак на първите партизани в Ловешко. Арестуван през 1942 г. за политическата си дейност. След акция на партизаните в съседното с. Летница, за да избегне нов арест, преминава в нелегалност и е партизанин в I чета на Народна бойна дружина "Чавдар" от 17 декември 1942 г. След прегрупирането на партизанските сили в Ловешко е партизанин в състава на Партизански отряд "Христо Кърпачев". През 1944 г. е политкомисар на Свищовската чета на Горнооряховския партизански отряд. Участва във всички бойни акции.
След 9 септември 1944 г. участва във войната срещу Германия. Поручик, командир на Доброволческа гвардейска рота от състава на XXXIV- и Пехотен Троянски полк. Участва в бойните действия на полка при височина Голям връх (кота 1022), връх Сулагета (кота 904, 1068, 1070), гр. Бяла паланка, гр. Свърлиг, височина Паяшки камък, Крушумлия (кота 1018) и гр. Прищина. След края на първата фаза на войната завършва Военно училище. Служи в строевите части на БНА. Завършва Военна академия. Достига до звание генерал-майор през 1969 г. По това време е инструктор в отдел "Военен" на ЦК на БКП. След пенсионирането си е почетен председател на Съюза на ветераните от войните в България. Автор на мемоарната книга "Там гдето тече Осъм", Военно издателство, С., 1976, 1988.