W 2005 wstąpił do Platformy Obywatelskiej. W wyborach w tym samym roku bezskutecznie kandydował do Sejmu. W latach 2006–2007 pełnił funkcję radnego wrocławskiej rady miejskiej. W wyborach parlamentarnych w 2007 uzyskał mandat poselski. Kandydując w okręgu wrocławskim, otrzymał 4740 głosów. Był też pełnomocnikiem wojewody dolnośląskiego ds. Euro 2012. W wyborach w 2011 uzyskał 9635 głosów i ponownie wszedł do Sejmu. W Sejmie VII kadencji został m.in. przewodniczącym Parlamentarnego Zespołu ds. Wolnego Rynku oraz Parlamentarnego Zespołu do spraw Kresów, Kresowian i Dziedzictwa Ziem Wschodnich i wiceprzewodniczącym Polsko-Gruzińskiej Grupy Parlamentarnej. 30 października 2013 został zawieszony na 3 miesiące w prawach członka PO.
W 2014 przewodniczył kolejno regionalnym kampaniom wyborczym do Parlamentu Europejskiego oraz przed wyborami samorządowymi. W grudniu tegoż roku został sekretarzem Platformy Obywatelskiej w regionie dolnośląskim. W wyborach w 2015 z powodzeniem ubiegał się o poselską reelekcję, otrzymując 12 233 głosy. 20 marca 2016 został przewodniczącym wrocławskich struktur PO, którym był przez dwa dni. 13 czerwca tego samego roku wystąpił z partii, przechodząc do klubu poselskiego Nowoczesnej. W styczniu 2017 został przyjęty do tej partii. W tym samym roku zasiadł w jej radzie krajowej.