Oliver replaces Andy Coulson, and will be employed as a special adviser.
Oliver is 41 and has been the controller of BBC Global News since June 2010. Before that he was editor of 'BBC News at Ten' and 'BBC News at Six', Britain's two most-watched news programmes.
The Prime Minister said: "I am very pleased that Craig Oliver is to become the new director of communications at 10 Downing Street. Craig has formidable experience as a broadcast journalist. He will do an excellent job in explaining and communicating the Government's programme."
Oliver said: "I'm delighted to be joining David Cameron and his team at such an exciting and challenging time. It's difficult to leave the BBC after a fascinating few years – but this is an opportunity I can't turn down."
From 2002 to 2006 he was the head of output at ITV News, responsible for overseeing ITV's 'Lunchtime News', 'Evening News' and 'News at Ten'.