Олег Виноградов родился 1 августа 1937 года в Ленинграде (ныне — Санкт-Петербург).Балетом начал заниматься поздно.
В 1958 году окончил Ленинградское хореографическое училище (ныне Академия русского балета имени А. Я. Вагановой; педагог А. И. Пушкин) .
В 1958—1965 годах — артист, с 1963 — ассистент балетмейстера, затем балетмейстер, а также театральный художник Новосибирского театра оперы и балета, где состоялись его первые постановки: отдельные номера в балете «Семь красавиц» К. А. Караева (балетмейстер П. А. Гусев) и новая редакция 1-й картины балета «Лебединое озеро» П. И. Чайковского.
В 1967 году окончил балетмейстерский факультет ГИТИСа (Москва).
В 1967—1972 годах — балетмейстер Ленинградского театра оперы и балета им. С. М. Кирова, в 1973—1977 — главный балетмейстер Ленинградского Малого театра оперы и балета (ныне Михайловский театр), в 1977—2001 (фактически до 1997 года) — художественный руководитель балетной труппы и главный балетмейстер Ленинградского театра оперы и балета им. С. М. Кирова (с 1992 года — Мариинский театр).Оформил несколько балетов как сценограф. Создал эскизы костюмов к балету «Сильфида» Г. С. Лёвеншёльда.Осуществлял постановки в Одессе, Минске, Риге, Таллине, Фрунзе, Дрездене, Будапеште, Софии, Берлине.
С 1990 года был художественным руководителем Кировской академии балета (Universal Ballet Academy) в Вашингтоне (США).
С того же года — артистический директор труппы «Юнивёрсал-балет» в Сеуле (Республика Корея), которой руководил 20 лет.
В 1991 году создал «Малый балет Мариинского театра» (с 1994 — «Санкт-Петербургский Камерный балет» ).
В феврале 2008 года, после 18 лет преподавания за границей, вернулся в Санкт-Петербург в качестве главного приглашённого балетмейстера Михайловского театра.
С 2009 года был деканом факультета режиссуры музыкального театра, художественным руководителем балета Театра оперы и балета Санкт-Петербургской консерватории им. Н. А. Римского-Корсакова.