Виктор Астафьев родился 1 мая 1924 года в селе Овсянка, недалеко от Красноярска, в семье Лидии Ильиничны Потылициной и Петра Павловича Астафьева. Он был третьим ребёнком в семье, однако две его старшие сестры умерли в младенчестве. Через несколько лет после рождения сына Пётр Астафьев попадает в тюрьму с формулировкой «вредительство». Во время очередной поездки Лидии к мужу лодка, в которой среди прочих плыла она, перевернулась. Лидия Потылицина, упав в воду, зацепилась косой за сплавную бону и утонула. Её тело нашли лишь через несколько дней. Виктору тогда было семь лет. После смерти матери Виктор жил у её родителей — Екатерины Петровны и Ильи Евграфовича Потылициных. О детстве, проведённом с бабушкой Катериной Петровной и оставившим в душе писателя светлые воспоминания, Виктор Астафьев рассказал в первой части автобиографии «Последний поклон».
Выйдя из заключения, отец будущего писателя женился во второй раз. Решив податься за «северной дикой деньгой», Пётр Астафьев с женой и двумя сыновьями — Виктором и новорождённым Николаем — отправляется в Игарку, куда выслали раскулаченную семью его отца — Павла Астафьева. Летом следующего года отец Виктора заключил договор с игарским рыбзаводом и взял сына на промысловую рыбалку в местечко между посёлками Карасино и Полоем. После окончания путины, возвратившись в Игарку, Пётр Астафьев попал в больницу. Брошенный мачехой и родными, Виктор оказался на улице. Несколько месяцев он жил в заброшенном здании парикмахерской, однако после серьёзного инцидента в школе получил направление в детский дом.
В 1942 году ушёл добровольцем на фронт. Военному делу обучался в школе пехоты в Новосибирске. Весной 1943 года был направлен в действующую армию. Был шофёром, артразведчиком, связистом. До конца войны Виктор Астафьев оставался простым солдатом. В 1944 году в Польше был контужен.
После демобилизации в 1945 году уехал на Урал, в город Чусовой, Пермская область.
В 1945 году Астафьев женился на Марии Семёновне Корякиной. У них было трое детей: дочери Лидия (родилась и умерла в 1947 году) и Ирина (1948—1987) и сын Андрей (род. в 1950 году).
В Чусовом Астафьев работал слесарем, подсобным рабочим, учителем, дежурным по вокзалу, кладовщиком.
В 1951 году в газете «Чусовской рабочий» опубликован первый рассказ Астафьева «Гражданский человек». С 1951 года работал в редакции этой газеты, писал репортажи, статьи, рассказы. Первая его книга «До будущей весны» вышла в Перми в 1953 году.
В 1958 году Астафьев был принят в Союз писателей СССР. В 1959—1961 годах учился на Высших литературных курсах в Москве.
С 1989 года по 1991 год Астафьев был Народным депутатом СССР.
В 1993 году подписал «Письмо 42-х».
Скончался 29 ноября 2001 года в Красноярске. Согласно завещанию Астафьев был похоронен в родном селе Овсянка Красноярского края.
29 ноября 2002 года в селе Овсянка был открыт мемориальный дом-музей Астафьева. 30 ноября 2006 года в городе Красноярск был установлен памятник Астафьеву.