Первым заметным появлением Кавилла на экране стала роль в фильме «Граф Монте-Кристо», вскоре последовали роли в модернистском фильме «Я захватываю замок» с Ромолой Гарай в 2003 и в экспериментальном HDTV-фильме «Красная Шапочка» в 2004 году. В 2005 году появился в фильме «Восставший из ада 8: Мир ада», а в 2006 году у Кэвилла была второстепенная роль в фильме «Тристан и Изольда». Также у актёра было несколько неудач на кастингах. Он пробовался на роль Седрика Диггори в фильме 2005 года «Гарри Поттер и Кубок огня», но роль досталась Роберту Паттинсону. В том же 2005 Кэвилл претендовал на роль Джеймса Бонда в фильме «Казино „Рояль“». Продюсеры и режиссёр выбирали между ним, Дэниелом Крейгом и Сэмом Уортингтоном, но посчитали, что он слишком молод для этой роли. В декабре 2005 года Empire назвал Генри «самым неудачливым парнем в Голливуде». Позже он пробовался на роль Эдварда Каллена, но в то время, когда начали снимать фильм, ему было уже 24 года и он не выглядел как 17-летний подросток