Before joining Twente, he played for AFC Ajax, ADO Den Haag (loan), Fortuna Düsseldorf (loan), Anderlecht, Bayer Leverkusen, Lokomotiv Moscow and Dynamo Moscow. Between 2003 and 2005, he played regularly in the Russian national team.
Bulykin began his football career with Lokomotiv Moscow in 1997. He stayed with Lokomotiv for three years scoring 28 goals in 94 appearances and attracted quite a bit of attention. In Lokomotiv Moscow Bulykin won Silver medals (1999, 2000), Bronze (1997) and two times Russian Cup (1997, 2000).
In 2001, Bulykin signed with Dynamo Moscow and quickly established himself as the first team player for the next three seasons. He scored a total of 29 goals in 90 appearances for the club. In 2003 was invited to the Russian national team.
With improving performances for both club and country, Bulykin, who had never hidden his desire to move to a foreign club, was expected to move abroad. In January 2004 he spent two weeks on trial with Everton FC, but he did not have enough caps for a work permit. In 2005, hoping move to England, Bulykin went on trials in Portsmouth FC but that transfer did not happen. As a result, Bulykin remained with Dynamo, and was quickly relegated to play in the second team, and eventually excluded from training process altogether. While almost breaking his relationship with Dynamo, he re-signed for the 2006 season, after the former Russia manager Yuri Syomin was appointed as the club's manager. On 31 March, when Bulykin was ready to come as a substitute against Saturn, Syomin shouted at him, "Take off the mittens!", a moment that was televised live. Syomin later said that he considers wearing gloves when the weather is relatively mild to be a sign of unwillingness to work hard, while Bulykin himself took Syomin's shout as an emboldening, albeit a bit over the top one. Syomin was sacked mid season and under the next manager, Andrei Kobelev, Bulykin was placed on the transfer list, where he spent the end of 2006. Trying to resolve Bulykin's deadlock with Dynamo, its general manager, Dmitri Ivanov, stated that the club would release Bulykin with no transfer cost, should there be any interest from anyone.
On 28 August 2007, Bulykin secured a one-year contract with German club Bayer Leverkusen, after scoring a goal in two friendly matches during his trial for the Bundesliga club. On 19 December 2007, he scored for the first time for the club, netting two goals against Zurich in the UEFA Cup, and was declared "man of the match" by UEFA. In Round 20, Bulykin, starting for the first time in his Bayer career, broke the Bundesliga record for the fastest yellow card received (on 12th second). He played 19 official games in this 2007–2008 season and he scored five goals for Bayer Leverkusen.
On 19 August 2008 he moved to Belgian club Anderlecht, hoping to gain more game time as a striker. After initial success where he scored two headers in his debut in the Belgian Pro League, he was quickly benched by the coach Ariël Jacobs and had marginal appearances through the rest of 2008. He played 10 games only and scored 3 goals.
After being idle for most of 2009, Bulykin was loaned back to Germany, this time to a Bundesliga second division team Fortuna Düsseldorf. He started with an impressive play in his first match against Hamburger SV in the German Cup. He had bad luck with a serious injury that took him five months to recover from, which made this whole season very unlucky.
While Anderlecht won the Belgian Supercup, Bulykin was on trial at ADO Den Haag. The Dutch Eredivisie team decided to loan him for the 2010–11 season. He scored 21 league goals and became popular among ADO Den Haag fans. After the season ADO Den Haag tried to buy Bulykin, but an agreement couldn't be reached and he returned to Anderlecht after his season in the Netherlands.
On 31 August 2011, it was announced that RSC Anderlecht and Ajax had come to terms on the move of Bulykin to the Amsterdam club as a free transfer. Bulykin signed a one-year contract with an option for the club to extend it for one more year. In his first competition match, against rivals PSV Eindhoven, he scored the second Ajax goal, deciding the game on a 2–2 draw.
On 7 December 2011, Dmitri Bulykin was voted Best Russian Football Player abroad by the Russian Football Union, but was unable to attend the Gala in Moscow to receive his award, due to the event being scheduled at the same time as the UEFA Champions League home match against Real Madrid.
After his Ajax contract expired in the summer of 2012, and was not extended, free agent Bulykin signed a one-year deal, with option for another year at FC Twente, who just had seen striker Luuk de Jong leave for VfL Borussia Mönchengladbach.
On 18 September 2013, Bulykin joined Russian Premier League side Volga Nizhny Novgorod, signing a one-year contract.
Bulykin made his debut for Russia on 9 September 2003 in the Euro 2004 qualifier against the Republic of Ireland under manager Georgi Yartsev. He made quite an impression in his only second appearance by scoring three goals in Russia's next qualifier against Switzerland. Russia eventually won 4–1 to subsequently qualify for the final tournament.
In the final tournament Bulykin struggled in Russia's two losses against Spain and Portugal. Bulykin finally made an impact against Greece by scoring a header off a Rolan Gusev corner in a game where Russia emerged victorious 2–1 to console their fans being the only team able to beat the eventual champions.
Bulykin was called up for the 2006 World Cup qualifiers and scored in the very first round against Slovakia in a 1–1 draw. He played for Russia in 15 games and scored 7 goals.As of 14 April 2013
Russian Premier League: Runner-up (Silver) 1999, 2000
Russian Premier League: 3rd Place (Bronze) 1998
Russian Cup: 1999, 2000
Belgian First Division: Runner-up 2008–09
Belgian Supercup: 2010
Best Russian Football Player abroad: 2011