A.ICl是不同元素形成的化合物,故A错误;B.反应①中ICl中I元素的化合价为+1价,MgI2中I元素的化合价为-1价,Mg元素化合价升高,则MgI2既是氧化产物,又是还原产物,故B正确;C.反应②中各元素的化合价都没有发生变化,不是氧化还原反应,故C错误;D.ICl为共价化合物,属于分子晶体,故D错误.故选B.