Версий о происхождении имени Кощей несколько.
Первая версия – от худого, даже тощего человека, и связано имя со словом кость, общеславянское *kostь.
Ещё одна версия кажется мне менее правдоподобной. А звучит она так. В древнерусском было слово кощеи, которое означает «мальчик, пленник, раб, нищий», которое, в свою очередь, пошло от тюркского kоšči «невольник». По-моему маловероятно, что эта версия может иметь отношение к Кощею Бессмертному.
Третья версия, согласно словарю В.И. Даля, говорит о том, что сначала было имя Кащей, которое пошло от глагола «кастить», что значит «вредить, пакостить». Но в последствии переделано в Кощей, от слова кость, из-за худобы Бессмертного (как в первой версии).
Ещё одна, как мне кажется, тоже не очень правдоподобная версия, что Кощей – заимствование из тюркских языков, например в казахском есть слово кощ, которое переводится как «кочевник». Но опять же, насколько я знаю, Кощей Бессмертный кочевником не был, поэтому в этой версии я также сомневаюсь.
А почему Кощея называют Бессмертным, если мы все знаем, что он «проболтался», где находится его смерть. Вот цитата из русской народной сказки Булат-молодец:
«Моя смерть далече: на море на океане есть остров, на том острове дуб стоит, под дубом сундук зарыт, в сундуке – заяц, в зайце – утка, в утке – яйцо, а в яйце – смерть моя».
По распространенной версии не так всё просто. Море означает воду, остров – землю, заяц – животных, утка – птиц. Т.е. весь мир вокруг нас. Таким образом, Кощей использует все эти конкретные образы в аллегорическом смысле. Не будет же он, в самом деле, рассказывать, где его смерть находится? А потому он и вправду бессмертен.