Grę w szachy poznał w wieku 4 lat. Był dwukrotnym mistrzem Rosji juniorów do lat 16 i 18. W 2001 r. osiągnął duży sukces, zwyciężając w Eliście w mistrzostwach kraju seniorów. W tym samym roku wystąpił w Moskwie na mistrzostwach świata rozegranych systemem pucharowym, awansując do III rundy, w której przegrał z Aleksiejem Szyrowem. Rok później wystąpił w narodowej drużynie w meczu Rosja - Reszta świata. W 2003 r. zwyciężył w silnie obsadzonym otwartym turnieju "Corsican Open" w Bastii (przed m.in. Loekiem van Welym, Krishnanem Sasikiranem i Siergiejem Tiwiakowem). W 2004 r. podzielił III m. (za Ernesto Inarkiewem i Zwiadem Izorią, wspólnie z Ianem Rogersem i Nicholasem Pertem) w otwartym turnieju w Hoogeveen oraz wystąpił na mistrzostwach świata w Trypolisie (gdzie w I rundzie przegrał z Hichamem Hamdouchim). W 2005 r. podzielił I m. (wspólnie z Emilem Sutowskim, Andriejem Charłowem, Wasilijem Iwanczukiem i Władimirem Akopjanem) w turnieju "Aerofłot Open" w Moskwie oraz zajął II m. (za Pentalą Harikrishną) w turnieju "Sanjin Hotel Cup" w Taiyuan. W 2006 r. zwyciężył (wspólnie z Magnusem Carlsenem) w turnieju "Corus B" w Wijk aan Zee. W 2008 r. podzielił II m. (za Janem Niepomniaszczijem, wspólnie z Aleksiejem Driejewem) w kolejnym openie "Aeroflot" w Moskwie. W 2009 r. samodzielnie zwyciężył w turnieju XVIII kat. FIDE w miejscowości Pojkowskij. W 2011 r. podzielił II m. (za Pentalą Harikrishna, wspólnie z Lazaro Bruzonem Batistą) w turnieju "Tata Steel Chess Tournament"–B w Wijk aan Zee. W 2013 r. zajął II m. (za Pawło Eljanowem) w Pojkowskim. W 2014 r. zdobył w Erywaniu złoty medal indywidualnych mistrzostw Europy oraz zajął II m. (za Pawło Eljanowem) w rozegranym w Şəmkirze turnieju B memoriału Wugara Gaszimowa.