During his career, he played for German Bundesliga clubs such as Hamburger SV, VfL Wolfsburg and Bayern Munich, as well as CSKA Moscow, winning the 2004–05 UEFA Cup for the latter, and also for the Croatia national team. Olić primarily played as a striker but could also operate as a winger. He has been described as a relentless pursuer of the ball and possessing “power and a decent bit of pace with him”. Former Croatia manager Slaven Bilić described him as a typical “match-winner” and “king of important matches” due to his ability to score in important matches against big opponents. Named the Croatian Footballer of the Year in 2009 and 2010, Olić appeared with Bayern Munich in two UEFA Champions League finals, in 2010 and 2012.
Olić represented Croatia at three FIFA World Cups–in 2002, 2006 and 2014–and two UEFA European Championships–in 2004 and 2008; earning his 100th cap on 16 November 2014, before retiring from international football in 2015.
He started his coaching career in 2017, joining the coaching staff upon appointment of Zlatko Dalić as Croatia national team head coach. He helped the team reach the 2018 FIFA World Cup Final and qualify for UEFA Euro 2020, interrupting his tenure with the team to briefly coach his former club CSKA Moscow.
Olić was born and raised in the village of Davor near Slavonski Brod, Croatia. He started playing football for the local club NK Marsonia in 1996, and spent two good seasons there, before he was acquired by German club Hertha BSC in 1998. He did not see much play there and returned to Marsonia the following year, where he earned promotion to the top flight after winning the Croatian Second League with his team.
After another successful season at Marsonia, in the 2000–01 season, he scored 17 goals in 29 games – in 2001, he moved to NK Zagreb, where he scored 21 goals in 28 appearances and helped his team win the league. The following season, he moved to Dinamo Zagreb, where he scored 16 goals in 27 games, and became the best striker in the Croatian First League. 
In 2003, Olić was acquired by CSKA Moscow. His form rose gradually, and in the 2005 season, he contributed with ten goals in twice as many games. With CSKA Moscow, he won the UEFA Cup in 2005, the Russian Premier League three times (in 2003, 2005 and 2006), the Russian Cup twice (in 2005 and 2006), and twice the Russian Super Cup (2004 and 2006).
In January 2007, Olić moved to Hamburger SV, playing his first Bundesliga match with them against Energie Cottbus on 31 January. He was signed because Hamburg were in deep trouble, finishing in the relegation zone before the winter break. It worked out in the end, and Hamburg finished seventh, which even acquired them a UEFA Intertoto Cup place, which they eventually won. He scored two goals in the last match in the 2006–07 Bundesliga season against Alemannia Aachen in a 4–0 win. In October 2007, Olić scored a hat-trick in the Bundesliga match against VfB Stuttgart, which Hamburg won 4–1. He was the first player in the club’s history to score three successive goals in one half.
Olić effectively won the 2008 Emirates Cup for Hamburg, with two injury time goals against Juventus, increasing the team’s points tally to an unassailable level (due to the points-for-goals system). He endeared himself to Hamburg fans for his commitment and consistent work rate on the pitch. In his last game for the north German club, he sported a T-shirt with the words, “Danke fans” (“Thank you, fans”) written on it, as he bid farewell to the fans.