W 2005 z listy PO ponownie został posłem na Sejm V kadencji, wybranym w okręgu rzeszowskim. W trakcie V kadencji zasiadał w Komisji Rolnictwa i Rozwoju Wsi. W wyborach parlamentarnych w 2007 po raz trzeci uzyskał mandat poselski, otrzymując 28 690 głosów. W VI kadencji został przewodniczącym Komisji Infrastruktury. W 2010 stanął na czele struktur PO w województwie podkarpackim. W wyborach w 2011 z powodzeniem ubiegał się o reelekcję, dostał 27 510 głosów.

W czerwcu 2013 został powołany na stanowisko sekretarza stanu w Ministerstwie Transportu, Budownictwa i Gospodarki Morskiej. W połowie listopada 2013 tymczasowo przejął obowiązki ministra transportu, budownictwa i gospodarki morskiej. Pod koniec tegoż miesiąca przestał wykonywać te obowiązki w związku z likwidacją ministerstwa i powołaniem Elżbiety Bieńkowskiej na stanowisko ministra infrastruktury i rozwoju. Również w listopadzie 2013 został sekretarzem stanu w Ministerstwie Infrastruktury i Rozwoju i pełnomocnikiem rządu ds. zarządzania infrastrukturą drogową. Pełnił tę funkcję do maja 2015. 1 czerwca tego samego roku wygasł jego mandat poselski, którego się zrzekł.