В 1981 году вместе с семьей переехал в Нижневартовск, где прожил четыре года. В 1985 году семья вернулась в Ленинград. Окончив восемь классов средней школы № 486 (где работала учителем математики его мама), поступил в Ленинградский техникум авиационного приборостроения и автоматики, но после третьего курса забрал документы, осознав, что техническая специальность не для него. Работал полотером, дворником, уличным музыкантом, монтировщиком в театре-студии «Суббота».
В 1990 году поступил в Ленинградский государственный институт театра, музыки и кинематографии (ЛГИТМиК) (с 1993 года — СПбГАТИ) (мастерская В. М. Фильштинского). За годы учебы сыграл ряд крупных ролей: Ломова в водевиле «Шутки» А. П. Чехова, несколько ролей в постановке «Время Высоцкого», канатоходца Матто в «Дороге» Ф. Феллини, Чебутыкина в «Трех сестрах». Выпускная работа — Эстрагон (Гого) в постановке Ю. Бутусова «В ожидании Годо».
В 1994 году сыграл первую, небольшую роль в кино («На кого Бог пошлет»). В 1995 году, окончив СПбГАТИ, был принят в Экспериментальный театр «Перекресток» в Санкт-Петербурге, где прослужил один год. Одновременно работал на региональном телевидении в качестве ведущего отдела музыкальных и информационных программ.
В 1996 году Хабенский перешел в московский театр «Сатирикон» имени Аркадия Райкина. Здесь молодой актер был занят, в основном, на вторых ролях. Среди его работ — спектакли «Трехгрошовая опера» и «Сирано де Бержерак».
В 1998 году снялся сразу в трех картинах: в российско-венгерской детективно-фантасмагорической мелодраме Томаша Тота «Наташа», социальной драме А. Ю. Германа «Хрусталев, машину!» и мелодраме Дмитрия Месхиева «Женская собственность». За работу в картине Дмитрия Месхиева Хабенскому была присуждена премия в номинации «Лучшая мужская роль» на Гатчинском кинофестивале «Литература и кино». Вскоре Константин сыграл небольшую роль в триллере Николая Лебедева «Поклонник» (1999). Следующей заметной работой в кино стала главная роль в драме Владимира Фокина «Дом для богатых» (2000).
Популярность Хабенскому принес сериал «Убойная сила» (2000—2005); телезрители запомнили его как Игоря Плахова. Тем временем продолжалась и его работа в театре: с 1996 года Хабенский выступал на сцене Санкт-Петербургского академического театра имени Ленсовета, где играл заглавную роль в спектакле «Калигула». Среди других работ актера: дурачок Карл в «Войцеке» Г. Бюхнера, Эстрагон в спектакле «В ожидании Годо» С. Беккета, Валентайн в «Поживем — увидим» Б. Шоу.
Еще одной заметной работой Хабенского в кино стала роль Саши Гурьева в фильме режиссера Филиппа Янковского «В движении» (2002). Сотрудничество с Филиппом Янковским продолжилось в фильме «Статский советник» (2005), где актер снялся в роли Грина (Григория Гринберга). В 2003 году Константин Хабенский был принят в труппу МХТ имени А. П. Чехова.
Наибольшую популярность Хабенскому принесли фильмы «Ночной дозор» (2004) и «Дневной дозор» (2005). Персонаж фильма Антон Городецкий стал одной из наиболее известных ролей Константина. В 2006 году актер снялся в картине «Час пик» по роману Ежи Ставиньского. Далее много работает в кино: сыграл Костю Лукашина в «Иронии судьбы. Продолжение» (2007) и Александра Колчака в фильме «Адмиралъ» (2008), в 2010 году снялся в главной роли Вячеслава Колотилова в фильме «Выкрутасы» режиссера Левана Габриадзе, в 2012 году — в роли Алексея Турбина в телесериале «Белая гвардия».