В сезоне 2002/03 Марвин Комппер перешёл из молодёжной команды «Штутгарт» в любительскую команду мёнхенгладбахской «Боруссии»[5]. Вскоре после прихода в клуб он был определён в команду до 19 лет, а затем в команду «Боруссия» (Мёнхенгладбах) II[6][7]. В июле 2005 года он подписал свой первый профессиональный контракт, который был рассчитан до 2008 года[8].
Вскоре после подписания первого профессионального контракта Комппер был переведён в первую команду и дебютировал в сезоне 2005/06[9][10]. Его первое появление за клуб состоялось 1 октября 2005 года, когда он вышел на замену во втором тайме вместо травмированного Жеффа Штрассера в матче против «Майнца» (1:0)[11]. Поскольку большую часть сезона он провёл на скамейке запасных, защитник в итоге вышел на поле пять раз за сезон[12][13].
В сезоне 2006/07 Комппер четыре раза выходил на поле в составе резервной команды[9] в августе 2006 года[14]. 14 октября 2006 года он впервые вышел на поле (а также впервые в старте) в матче с «Вольфсбургом» (3:1)[15]. Из-за травм Филипа Дамса и защитника сборной Марселя Янсена, осенью 2006 года он стал постоянным игроком в Бундеслиге[16]. У него было несколько выходов в первой команде, пока он не был исключён из первой команды после критики главного тренера Юппа Хайнкеса после ничьей против «Майнца» (1:1) 9 декабря 2006 года[17]. 30 января 2007 года он вернулся в первую команду после дисквалификации, сыграв вничью против «Нюрнберга» (0:0)[18]. После отставки Хайнкеса Комппер получил больше возможностей в первой команде под руководством нового тренера Йоса Лухукая[19]. Он закончил сезон с 23 матчами в чемпионате, но в конце сезона клуб был понижен в классе, заняв последнее место в таблице Бундеслиги[9]. В первой половине сезона 2007/08 Комппер сыграл всего три матча за «гладбах»[20][21][22].
«Хоффенхайм»
В январе 2008 года из-за отсутствия возможности играть в первой команде, Марвин Комппер перешёл в «Хоффенхайм»[23]. 1 февраля 2008 года Комппер дебютировал в составе «Хоффенхайма», где он начал весь матч на позиции центрального защитника в победе над «Вееном» со счётом 2:0[24]. 10 февраля 2008 года перед последующим матчем против своего бывшего клуба, «Боруссии» из Мёнхенгладбаха, Комппер дал интервью Bild, в котором сказал, что не испытывает обиды по поводу своего ухода из клуба[25]. Он отыграл весь матч против своего бывшего клуба, где он организовал гол для Демба Ба в победе со счётом 4:2[26]. Комппер быстро закрепился в первой команде, где он играл в основном на позиции центрального защитника[27][28]. Он также был в составе команды, которая завоевала повышение в Бундеслигу, обыграв «Гройтер Фюрт» со счётом 5:0 в последней игре сезона[29]. К концу сезона 2007/08, в котором «Хоффенхайм» вышел в Бундеслигу, Комппер провёл в общей сложности 19 матчей во всех турнирах.
Комппер начал сезон 2008/09, когда помог клубу выиграть первый матч Бундеслиги, победив «Энерги Котбус» со счётом 3:0[30]. Он продолжал оставаться в первой команде, играя на позиции центрального защитника[31]. 27 сентября 2008 года он забил свой первый гол в матче против бременского «Вердера» (5:4)[32]. Он помог команде одержать победы, благодаря которым до января они находились на вершине турнирной таблицы[33]. Однако вскоре форма клуба ухудшилась, что привело к потере места в верхней части таблицы, а сам защитник, несмотря на наличие игрового времени, переживал неудачи[34]. 2 мая 2009 года он впервые стал капитаном команды, где отыграл весь матч, в поражении против «Вольфсбурга» (0:4)[35]. Несмотря на дальнейшие неудачи в течение сезона 2008/09[36][37][38][39], Комппер завершил свой полный сезон в клубе, сыграв в общей сложности 32 матча и забив один раз во всех турнирах.
В сезоне 2009/10 Комппер продолжал оставаться в первой команде, играя на позиции центрального защитника[40][41]. Свой первый гол в сезоне он забил 12 сентября 2009 года в победе над «Бохумом» (3:0)[42]. Его выступление привело к тому, что он подписал продление контракта до 2013 года[43]. Несмотря на то, что в сезоне 2009/10 он дважды выходил на замену[44][45][46], он провёл в общей сложности 35 матчей и забил дважды во всех турнирах.
В сезоне 2010/11 Комппер удачно начал матч открытия сезона, когда он организовал гол для Пениэля Млапы в победе над бременским «Вердером» (4:1)[47]. Он начал играть на позиции левого защитника, когда главный тренер Ральф Рангник предпочёл Айзека Ворса и Йосипа Шимунича в качестве центральных защитников[48]. Комппер начинал каждый матч, пока не получил травму спины, из-за которой он не играл в течение двух матчей[49]. 17 октября 2010 года он вернулся на позицию центрального защитника, на которой провёл весь матч, в победе над мёнхенгладбахской «Боруссией» (3:2)[50]. После этого ему удалось вернуть себе роль центрального защитника до конца сезона[51]. 18 декабря 2010 года Марвин Комппер забил свой первый гол в сезоне в ничьей с «Нюрнбергом» (1:1)[52]. Однако в конце марта Комппер попал в инцидент с партнёром по команде Сеядом Салиховичем на тренировке; позже они уладили свои разногласия[53].
В преддверии сезона 2011/12 Комппер был связан с уходом из «Хоффенхайма», причём интерес к нему проявляла команда Ла Лиги «Севилья»[54]. Несмотря на это, он остался в клубе и начал сезон, продолжая играть на позиции центрального защитника под новым руководством Хольгера Станиславски[55]. 1 октября 2011 года в ничьей с «Баварией» (0:0) игра Комппера была высоко оценена Станиславски, и он был назван «игроком матча»[56]. Он играл в каждом матче с момента открытия сезона до удаления 10 декабря 2011 года на последних минутах игры после фола на Томаше Пекгарте в победе над «Нюрнбергом» (2:0)[57]. После двухматчевой дисквалификации[58] Комппер снова был удалён в первом тайме за фол в четвертьфинальном матче против «Гройтер Фюрта» (1:0), который стал последней игрой Станиславски в качестве главного тренера[59]. 4 марта 2012 года несмотря на удаление, Комппер забил свой первый гол за клуб в ничьей против «Кёльна» (1:1)[60]. В конце сезона 2011/12 защитник провёл в общей сложности 33 матча и забил два раза во всех турнирах.
В сезоне 2012/13 Комппер продолжал играть в первой команде на позиции центрального защитника после назначения Маркуса Баббеля[61]. В сентябре 2012 года в отсутствие Тима Визе, Марвин получил роль капитана[62][63]. Клуб выиграл несколько матчей подряд против «Ганновера 96» и «Штутгарта»[64][65]. Он играл в каждом матче до удаления 10 ноября 2012 года за второе нарушение правил в ничьей против дюссельдорфской «Фортуны» (1:1)[66]. Комппер был капитаном команды ещё четыре раза, пока в январе 2013 года не был исключён из первой команды из-за комментария, сделанного им в адрес клуба[67]. В результате он был переведён во вторую команду[68]. Помимо исключения, игрок вёл переговоры по контракту[69]. К моменту своего ухода в сезоне 2012/13 Комппер провёл 16 матчей.
«Фиорентина»
В январе 2013 года Марвин Комппер подписал контракт с командой «Фиорентина», заключив трёхлетний контракт за нераскрытую сумму[70]. Позже он рассказал, что на самом деле контракт был рассчитан на два года[71]. После нескольких матчей в качестве неиспользованной замены на скамейке запасных[72][73], 3 марта 2013 года Комппер дебютировал за итальянский клуб, отыграв всю игру на позиции центрального защитника, в ничьей против «Кьево» (2:2)[74]. Затем он несколько раз выходил в основном составе в конце сезона[75]. В конце сезона 2012/13 годов немец в общей сложности семь раз выходил на поле.
В начале сезона 2013/14 Комппер появился в первых двух матчах сезона[76][77]. Однако вскоре он оказался на скамейке запасных и боролся за место в основной команде, так как столкнулся с конкуренцией на позиции центрального защитника[78][79]. 23 января 2014 года он забил поздний гол в матче против «Сиены» в четвертьфинале Кубка Италии, в результате чего «Фиорентина» одержала победу со счётом 2:1[80]. Несмотря на травму, полученную в конце сезона[81][82], немец завершил свой второй сезон, сыграв 19 матчей и забив один раз во всех турнирах. В летнее трансферное окно 2014 года ожидалось, что Комппер покинет клуб, поскольку его возможности в первой команде «Фиорентины» стали ограниченными[83]. В результате он был исключён из состава перед предсезонным турне клуба[84].
«РБ Лейпциг»
2 августа 2014 года Комппер перешёл в команду второй Бундеслиги «РБ Лейпциг», подписав трёхлетний контракт[85][86]. Ранее летом его активно сватали в «Эллас Верону»[87][88]. Однако он дал понять, что хочет играть в Бундеслиге до перехода в «РБ Лейпциг»[89]. После перехода в клуб он получил футболку с номером 33 перед началом нового сезона[90].
После того, как Комппер не был заменён в первых двух матчах[91], он дебютировал за «РБ Лейпциг» 22 августа 2014 года, выйдя на замену вместо травмированного Никласа Хоэнедера, в победе над «Эрцгебирге» (1:0)[92]. После дебюта немец начинал каждый матч за команду вместе с Тимом Себастианом и Лукасом Клостерманом на позиции центрального защитника[93][94]. Так продолжалось до тех пор, пока Комппер не был отстранён от игры за перебор жёлтых карточек в феврале 2015 года[95]. 15 февраля 2015 года после возвращения, Марвин был назначен капитаном на матч против «Франкфурта», который они проиграли 0:1[96]. Его возвращение было недолгим, когда он был удалён в первом тайме в матче против «Карлсруэ» 9 марта 2015 года, в результате чего он был дисквалифицирован на два матча[97][98]. Несмотря на то, что в конце сезона 2014/15 Комппер был в запасе[99][100][101], он завершил свой первый сезон, выйдя на поле в общей сложности 27 раз во всех турнирах.
Однако в начале сезона 2015/16 Комппер получил травму колена, из-за которой он несколько месяцев не играл в основной команде[102]. После возвращения к тренировкам после травмы в сентябре он был определён в резервную команду, чтобы восстановить форму[103][104]. 4 октября 2015 года он впервые после возвращения после травмы вышел на поле в матче против «Нюрнберга»[105]. После возвращения защитник вернул себе место в первой команде, несмотря на новые турниры в этом сезоне[106][107]. Он получил несколько выходов в первой команде, пока не получил мышечную травму, из-за которой выбыл на две недели в декабре 2015 года[108]. 7 февраля 2016 года Комппер забил после возвращения после травмы два месяца спустя, в победе над брауншвейгским «Айнтрахтом» со счётом 2:0[109]. Позже немец помог клубу впервые выйти в Бундеслигу, победив 8 мая 2016 года «Карлсруэ» со счётом 2:0[110]. К концу сезона 2015/16 он в общей сложности провёл 23 матча и забил трижды во всех турнирах.
Несмотря на трудности с восстановлением физической формы перед сезоном 2016/17[111], Компперу удалось вернуть себе место в основной команде на позиции центрального защитника в начале сезона[112]. С начала сезона он принял участие в каждом матче за команду[113]. Однако в ноябре 2016 года защитник получил разрыв капсулы сустава, из-за чего выбыл из строя на целый год[114]. 21 января 2017 года после возвращения после травмы Комппер забил в победе над «Айнтрахтом» (3:0) из Франкфурта[115]. Вернувшись после травмы Комппер продолжил возвращать себе место в первой команде к концу сезона и помог команде финишировать на втором месте, чтобы квалифицироваться в Лигу чемпионов на следующий сезон[116][117]. Несмотря на то, что в конце сезона 2016/17 он трижды выбывал из строя[118][119][120], в общей сложности он принял участие в 26 матчах и дважды забил во всех турнирах. В конце сезона 2016/17 Комппер подписал продление контракта до 2019 года[121].
Перед сезоном 2017/18 Комппер получил травму икры во время предсезонного турне клуба[122]. Несмотря на возвращение к тренировкам после травмы, как раз к началу чемпионата[123], Марвин, однако, оказался на скамейке запасных, поскольку проиграл конкуренцию Вилли Орбану, Дайо Упамекано, Ибраиму Конате и Штефану Ильзанкеру. Это также сочеталось с натянутыми отношениями с главным тренером Ральфом Хазенхюттлем[124]. К моменту своего ухода Комппер трижды выходил на поле в первой половине сезона 2017/18.
«Селтик» и «Дуйсбург»
Сообщалось, что «Селтик» принял предложение от «РБ Лейпциг» на сумму £1 млн[125]. В декабре 2017 года Комппер согласовал переход в клуб шотландской премьер-лиги «Селтик», сделка вступила в силу 1 января 2018 года[126]. За полтора года в составе шотландских грандов он так и не появился в чемпионате[127].
2 июля 2019 года он подписал контракт с «Дуйсбургом»[128]. 1 августа 2020 года он объявил о своём уходе и перешёл в тренерский штаб[129].
Ранее представлявший сборные Германии до 17 лет и Германии до 18 лет, Комппер впервые был вызван в сборную Германии до 20 лет, дебютировав 16 февраля 2005 года в матче против сборной Италии до 20 лет[131]. Через три месяца после дебюта Комппер был вызван в сборную Германии до 20 лет на молодёжный чемпионат мира в Нидерландах[132]. После того, как он дважды выходил на замену в первых двух матчах, он 18 июня 2005 года сыграл свой первый матч на турнире, где вышел на замену во втором тайме, в проигрыше против Аргентины до 20 лет (0:1)[133]. Комппер впервые вышел в стартовом составе на турнире, когда Германия проиграла сборной Бразилии (1:2) после того, как игра перешла в дополнительное время, выбыв из турнира[134]. В дальнейшем он провёл одиннадцать матчей за команду до 20 лет.
13 ноября 2008 года Комппер был впервые вызван в сборную Германии[135]. Через пять дней после повторного вызова, 19 ноября 2008 года, Комппер сыграл свою единственную международную игру в товарищеском матче против сборной Англии[125], став первым игроком «Хоффенхайма», надевшим форму сборной Германии[136]. После матча Марвин рассказал о своём дебюте, сказав: «Я был очень рад играть с самого начала, но мой дебют был омрачён только поражением, жаль, что мы не смогли успешно завершить год»[137].
Тренерская карьера
После завершения карьеры футболиста в 2020 году стал помощником главного тренера в «Дуйсбурге». В 2021 году вошёл в тренерский штаб Маркуса Гисдоля в московском «Локомотиве». После ухода Гисдоля 1 марта 2022 года Комппер стал исполняющим обязанности главного тренера[138]. Однако на следующий день «Локомотив» назначил исполнять обязанности главного тренера Дмитрия Лоськова, поскольку у Комппера не оказалось лицензии Pro[139].