Родился в Новокузнецке, но затем переехал в Междуреченск, где впервые встал на коньки. Воспитанник междуреченского хоккея и новокузнецкого «Металлурга» (с 2009 года). Дважды (в 2011 и 2012 годах) принимал участие в финальных турнирах первенства России среди юношей, причём в 2012 году играл за команду на год старше. В матче против «Стальных Лисов», состоявшемся 3 сентября 2012 года, впервые сыграл в Молодёжной хоккейной лиге за «Кузнецких Медведей»: Евгений Григоренко, Тимур Шингареев, Даниил Бикбулатов и Владимир Малиновский забросили в его ворота 5 шайб[4].
Вновь пропустив 5 голов в повторном матче в Магнитогорске[5], в следующей игре уступил место в воротах Андрею Карееву[6] и до середины октября выступал нерегулярно. 20 октября 2012 года отыграл свой первый в МХЛ матч «на ноль» (против «Чайки»)[7]. Всего за 2 сезона, проведённых в МХЛ, с учётом плей-офф сыграл 36 матчей, пропустил 88 шайб, а игра против «Чайки» осталась для него единственной без пропущенных голов.
2017 год
7 января 2013 года в матче против «Барыса» дебютировал за «Металлург» в КХЛ — сменил на площадке Александра Лазушина и за 25 неполных минут отразил 15 бросков, пропустив одну шайбу[8].
В матче с «Локомотивом», сыгранном 15 февраля, впервые провёл на площадке все 60 минут[9].
В первые два сезона сыграл 36 матчей в регулярном чемпионате и кубке Надежды.
В 3-м раунде драфта НХЛ 2014 года был выбран клубом «Нью-Йорк Айлендерс» под общим 78-м номером, однако остался в Новокузнецке и 4 сентября 2014 года провёл первый в карьере «сухой» матч в КХЛ[10].
28 октября 2014 года был вызван тренерским штабом сборной России на Кубок Карьяла. 9 ноября сыграл дебютный матч за сборную против команды Чехии: пропустил две шайбы, а сборная России выиграла 4:2.
В 2014 году Илья перешёл в московский ЦСКА. Поначалу не мог пробиться в основной состав. Но уже в сезоне 2015/16 он удивил тренерский штаб своей блестящей статистикой и стал первым номером в воротах ЦСКА. В 2016 году 20-летний Сорокин был вызван в сборную на чемпионат мира в России[11]. На турнире Сорокин сыграл 76 минут, включая полный сухой матч против Норвегии (основным вратарём был Сергей Бобровский), и стал бронзовым призёром.
В 2018 году был включён в состав сборной России на зимние Олимпийские игры в Пхёнчхане и стал олимпийским чемпионом[12]. Основным вратарём сборной на турнире был опытный Василий Кошечкин, 22-летний Сорокин сыграл только один период в матче группового
этапа против Словении, выйдя на площадку при счёте 6:1 в пользу России.
Орден Дружбы (27 февраля2018 года) — за высокие спортивные достижения на XXIII Олимпийских зимних играх 2018 года в городе Пхенчхане (Республика Корея), проявленные волю к победе, стойкость и целеустремленность[14].