За основу была взята пьеса Леонида Зорина, по которой в 1974 году Козаков поставил спектакль в Театре на Малой Бронной. Актерский состав фильма получился отнюдь не звездным – режиссер намеренно отказался от громких имен в титрах. Исключение составил разве что Леонид Броневой (Аркадий Велюров), известный советским зрителям по «Семнадцати мгновениям весны». Несмотря на то что не все актеры поначалу оценили сценарий (например, Елена Коренева сочла его опереточным), впоследствии многие из них называли роли в «Покровских воротах» своими любимыми.
К примеру, Евгений Моргунов считал поэта Соева одной из лучших своих ролей.