На сегодняшний день историки, лингвисты, краеведы не знают точного ответа на данный вопрос.
Ни одна из гипотез происхождения слова "Воронеж" не является настолько аргументированной, чтобы считать её единственным объяснением.
Надо сказать, для древних топонимов, особенно когда они привязаны к одноименному гидрониму, это вполне обычное явление.
<hr />
Название города "Воронеж" образовано от названия реки "Воронеж", на которой стоит город. В настоящее время город стоит на берегу достаточно большого водохранилища, образованного после постройки плотины ниже по течению в 1972 году. На этой реке также стоят города Липецк и Мичуринск.
В свою очередь, река Воронеж образована слиянием рек Лесной Воронеж и ПольнОй Воронеж ("польнОй" - значит "степной").
В Древние времена (по летописным источникам) река Воронеж именовалась Великой Вороной, а местность вдоль неё - Воронож (Воронаж, Вороняж).
Следует также обратить внимание, что недалеко протекает река под названием Ворона. И у названия этих рек одна и та же этимология.
<hr />
Теперь рассмотрим, какие же есть версии происхождения гидронима "Воронеж".
- Финно-угорская этимология, связь с мордовским словом "вир" - "лес". Аналогичным образом образован гидроним "Ворона". Древнефинно-угорское слово "вор", "вур" - «лес». На языке коми - "ворайн". То есть получается - Лесная река.
- Славянская этимология (придерживался М.Фасмер). От слова "вороной" - чёрный. Черная речка или "река в черных землях".
- Славянская этимология, от слова "ворон".
- Есть версия (историка-слависта П.Н.Третьякова) о связи названий городов Чернигов и Воронеж.
- Версия писателя Л.В. Успенского о существовании древнерусского имени Воронег. Будто бы некий Воронег основал поселение в Черниговской Земле. Затем переселенцы в Придонье переназвали местные речки с близким по звучанию названием на свой лад и основали поселение Воронеж.
- Смешаная этимология: мордовское "вир" - лес + тюркское "онгуза" (онуза) - вода.
- Версия академика Б.А. Рыбакова. Праславянское (скифо-сколотское) слово "вор" - ограда, граница + тюркское "онега" - вода, поток. Откуда пошли более поздние летописные "Воронож", "Вороняж".
- Индо-иранская (арийская) версия. В древние времена (III-II тысячелетие до н.э.) в этих местах жили скотоводческие племена индо-иранской языковой группы. Название местности и рек восходит к владыке вод по древнеиндийской мифологии, которого звали Варуна ("вар" - вода).
Общая теория происхождения гидронимов показывает, что в результате многократной смены автохтонного (исконного) населения данной местности (а тут жили иранцы, финно-угры, тюрки, скифы, славяне), название гидронимов претерпевали изменения и искажения, которые не могут быть объяснены с филологических позиций. Люди, жившие в тех местах век за веком беспощадно перевирали названия гидронимов и топонимов, приспосабливая их к нормам языка, существующим исключительно в их узком социуме.
Таким образом, название "Воронеж" (и "Ворона") не имеет никакого отношения в птице "вороне", а является ославяненным иранизмом.
Более подробно на эту тему можно почитать, например, тут.
<hr />
P.S. Похожий вопрос был на БВ тут.