Llicenciat en dret per la Universitat Autònoma de Barcelona i col·legiat a Terrassa, ha estat col·laborador dels serveis jurídics de l’Associació Catalana de Municipis (1993-95) i responsable de relacions institucionals de la Junta de Residus (1995-97). El 1989 s’afilià a Convergència Democràtica de Catalunya i milità, fins el 1998, en la Joventut Nacionalista de Catalunya. Diputat al Parlament de Catalunya des del 1997 per Convergència i Unió. Regidor de l’Ajuntament de Terrassa (2003-14), hi fou president del grup municipal de Convergència i Unió. Dins CDC, és conseller nacional des del 1992 i ha estat membre del comitè executiu nacional del partit (1994-2004, 2008-12) i del secretariat permanent (2008-12). El 2012 fou elegit secretari d’organització i el juliol del 2014, secretari general de Convergència Democràtica de Catalunya en substitució d’Oriol Pujol, i també coordinador general de CDC. Diputat al Parlament de Catalunya en les eleccions del 27 de setembre de 2015 per la coalició Junts pel Sí, el gener del 2016 fou nomenat conseller de Territori i Sostenibilitat en el govern presidit per Carles Puigdemont i Casamajó. Poc després, el mateix mes abandonà el càrrec de coordinador de CDC (refundat el juliol del 2016 en el Partit Demòcrata Europeu Català).
Des del càrrec a la Generalitat s’enfrontà al govern espanyol per l’estat i la gestió de les infraestructures, especialment la xarxa de Rodalies i l’aeroport de Barcelona-el Prat, dels quals reclamà el traspàs de la gestió íntegra. Després del Referèndum de l’1 d’octubre i de l’aprovació de la declaració de la creació de la República Catalana del 27 d’octubre de 2017 pel Parlament de Catalunya, el govern espanyol li ordenà cessar en el càrrec, juntament amb la resta de membres del govern català, en aplicació de l’article 155 de la Constitució espanyola que facultava la intervenció de la Generalitat de Catalunya. El 2 de novembre ingressà a la presó després que la jutge acceptés la petició del fiscal general i acusà de rebel·lió, sedició i malversació els membres del govern, per als quals dictà presó incondicional. Sortí de la presó el 4 de desembre, després que el jutge del Tribunal Suprem (que havia assumit les causes contra els independentistes) en dictés la llibertat provisional sota fiança.
Obtingué l’escó en les eleccions al Parlament de Catalunya per Junts per Catalunya convocades pel president del govern espanyol el 21 de desembre. El 23 de març de 2018, el jutge del Tribunal Suprem activà el processament i en dictà el reingrés a presó. El 3 de desembre s’uní a la vaga de fam d’altres presos polítics independentistes per a denunciar la dilació del Tribunal Constitucional de la resolució dels recursos d’empara presentats per la seva defensa, acció a la qual posà fi el 20 de desembre de 2018. Encara en presó provisional i mentre era jutjat pel Tribunal Suprem en la causa especial 20907/2017 contra dirigents independentistes, fou elegit diputat en les eleccions del 29 d’abril de 2019 al Congrés com a cap de llista per Tarragona de Junts per Catalunya. Bé que li fou permès recollir l’acta de diputat, el Congrés el suspengué (juntament amb altres diputats processats). Acabat el judici, el 14 d’octubre de 2019 fou condemnat a 10 anys i sis mesos per sedició i l’imposà el mateix temps d’inhabilitació.
El 23 de juny de 2021 fou indultat de la pena de presó pel govern de Pedro Sánchez, però es mantingué la inhabilitació establerta en la sentència. La vigència de l’indult quedà condicionada al fet de no tornar a cometre cap delicte greu —castigat amb més de cinc anys de presó— en un termini de sis anys.
Elegit diputat a les eleccions al Parlament de Catalunya el maig del 2024, el 10 de juny fou elegit president d’aquest.