Por que há um + em frente a um número local?
Não é para um número local, normalmente, mas se for, o código de área é deixado de fora e o + é usado no caso de pessoas de fora do código de área quererem ligar, para indicar que o número está incompleto.
A forma mais comum é que o + indica um código de país em falta. O código do país é um número fixo. Isto é, 1 para os EUA, 44 para o Reino Unido, 49 para a Alemanha. Mas algumas companhias telefónicas exigem que se coloque 00 na frente, algumas têm 010 e outras ainda outro código.
Então, algures na década de 80, o fax foi introduzido. Nesses, todos os números utilizados eram exibidos no cabeçalho com um número mais na frente, local ou não, incluindo o código do país (se aplicável) e o número de telefone completo, incluindo o código de área, mesmo que seja utilizado um número local, para indicar (para centrais telefônicas, presumo), que o número é um número de fax.
Então vieram os telefones celulares. Como os sistemas não são os mesmos em todo o mundo (na Europa, alguns países usam 'códigos de área' dedicados para indicar qual provedor é usado, outros países têm um 'código de área' para todos os números de telefone celular, e outros combinam os dois).