+7 - это префикс выхода на международную связь плюс международный код России.
8 - это внутрироссийский префикс для междугородней связи.
То есть когда вы звоните, начиная с "+7", то технически вы сначала говорите "это будет международный звонок", потом говорите "звоню в Россию", потом набираете номер. А когда звоните, начиная с "8", то говорите "я звоню в другой город России" и набираете номер. Сотовая связь была развернута поверх уже существующей системы междугородной/международной, поэтому использует ее префиксы. Для удобства оставили оба варианта.