Urodził się 7 czerwca 1963 roku w Białymstoku. Absolwent Uniwersytetu Warszawskiego filii w Białymstoku, kierunek filologia polska (ukończył studia, nie złożył pracy magisterskiej).
W wieku 17 lat rozpoczął aktywną działalność przeciwko władzom komunistycznym, z tego powodu został relegowany z II LO w Białymstoku. Maturę zdał wieczorowo. W latach 1982 – 1985 razem z Janem Budelem, Arturem Janem Szczęsnym i Mirosławem Małyszko założył w Białymstoku podziemną organizację: Młodzieżowy Komitet Obrony Społecznej (MłoKOS), był jej przewodniczącym. W latach 1982-1989 założyciel, organizator druku, wydawca i redaktor podziemnego pisma „Nasz Głos”, inicjującego działania opozycyjne białostockiej młodzieży. Od 1983 współpracownik podziemnej Tymczasowej Komisji Regionalnej „Solidarności” Białystok.
Za swoją działalność opozycyjną 12 kwietnia 1983 roku został aresztowany. Przetrzymywany w areszcie KW MO w Białymstoku i w Areszcie Śledczym w Białymstoku. Konsekwentnie odmawiał składania zeznań, przez tydzień głodował. W lipcu 1983 zwolniony na mocy amnestii. Natychmiast wrócił do działalności opozycyjnej. W marcu 1984 ponownie aresztowany, podjął głodówkę protestacyjną, po dwóch tygodniach został zwolniony ze względu na stan zdrowia. W lipcu 1984 roku śledztwo umorzono na mocy amnestii.
W 1986 roku jako student białostockiej filii Uniwersytetu Warszawskiego kierował opozycyjnym Ruchem Solidarności Młodych. W latach 1988-1989 członek i rzecznik prasowy jawnej Regionalnej Komisji Wykonawczej NSZZ „S” Białystok, w latach 1989-1990 delegat na Walny Zjazd Delegatów Regionu Białystok NSZZ „Solidarność”, członek Prezydium Zarządu Regionu Białystok NSZZ „S”, w 1990 r. delegat na II Krajowy Zjazd Delegatów NSZZ „S”.
Od początku lat 90-tych rozwijał swoją działalność jako redaktor i wydawca. W latach 1990 – 1992 zastępca redaktora naczelnego pisma białostockiej „S” - Tygodnika Białostockiego, potem redaktor naczelny pisma Plus, poświęconego tematyce wschodniej. W 1992 roku założył w Białymstoku własną firmę wydawniczą i kierował nią do 2007 roku.
Z Platformą Obywatelską związany od początku jej istnienia. W latach 2003-2006 przewodniczący Zarządu Miejskiego PO w Białymstoku. W 2004 r. wprowadził do polityki prof. Barbarę Kudrycką – kierował jej zwycięską kampanią do Parlamentu Europejskiego. W 2005 roku został wybrany posłem Platformy Obywatelskiej z woj. podlaskiego. W Sejmie V kadencji zasiadał w Komisji Kultury i Środków Przekazu, Komisji Mniejszości Narodowych i Etnicznych oraz Komisji Spraw Zagranicznych. W 2006 roku został przewodniczącym Regionu Podlaskiego PO RP, którą to funkcję pełnił do maja 2010 roku. Jesienią 2006 wprowadził do polityki prof. Tadeusza Truskolaskiego – kierował jego zwycięską kampanią wyborczą na prezydenta Białegostoku. Doprowadził do zawarcia porozumienia i trwałej współpracy PO ze środowiskiem prawosławnym w samorządzie Białegostoku i samorządzie województwa podlaskiego.
W 2007 roku po raz drugi wybrany do Sejmu. Obecnie jest wiceprzewodniczącym Komisji Spraw Zagranicznych, przewodniczącym Zespołu Parlamentarnego ds. Białorusi (założonego z jego inicjatywy) oraz członkiem Komisji ds. Łączności z Polakami za granicą. W 2005 roku zainicjował i współtworzył powołanie fundacji „Fundusz Białystok Ojcu Świętemu”, kierowanej przez ks. Andrzeja Kołpaka, proboszcza parafii Św. Ojca Pio w Białymstoku. Obecnie jest członkiem zarządu tej fundacji.
Żonaty, ma dorosłego syna Michała.