"I'll sign a contract after passing a medical (in Munich) later today," the 21-year-old told local media.
Litex's midfield dynamo Milanov, who broke into the national team after showing sparkling form over the last two seasons, became Bulgaria's youngest Footballer of the Year in December.
He netted 28 times in 106 league appearances for Litex and scored his first international goal in Bulgaria's 2-2 draw with Italy in the 2014 World Cup qualifier in September.
Bulgarian media reported that CSKA will pay Litex 2.75 million euros, which could rise to 3.75m euros depending on appearances.
Last month, CSKA completed their first domestic double in seven years after winning their 11th league title and 12th Russian Cup including Soviet-era triumphs.