Há uma diferença semântica importante em C++. O return encerrará o escopo e chamará todos os destrutores pendentes. Se for o encerramento da aplicação mesmo, raramente a chamada dos destrutores produzirá um resultado diferente, mas tecnicamente é possível que algum deles faça algo que seja importante para o fim da aplicação, nem que seja imprimir uma informação relevante para o usuário ou log.
Mesmo que a ação pareça a mesma, a função exit() provoca uma saía prematura da aplicação. Então a execução é encerrada quase imediatamente. O exit() finaliza os objetos estáticos, mas não os destrutores. Já o abort() e _Exit() nem isso faz e encerra na hora.
Há diferença mesmo em C se tiver funções registradas com atexit(). Essas funções sempre serão executadas não importa como a aplicação está sendo encerrada. Mas haverá comportamento indefinido se uma das funções vinculadas em atexit() tiver referência para algum dado na stack. Ocorre algo parecido com setbuf() e setvbuf(). Isso é importante principalmente em C.documentação
Note que a função main() não é especial e pode ser chamada dentro da aplicação. Nesse caso haverá uma diferença importante já que um return não encerrará a aplicação, ainda que no contexto da pergunta isso não aconteceria. Mas entenda que se o que você escreveu não for chamado pelo sistema operacional (de uma forma ou de outra) e esse main() faz parte de um módulo que será carregado e usado em outra aplicação, o seu módulo encerrará a aplicação e não só o seu código se usar o exit(), o return então será o mais adequado na maioria das situações.
Uma chamada ao main() pode ser recursiva, ainda que não deva. Claro que há diferença nesse caso, mas cai no que eu falei no parágrafo anterior.
Por isso que sempre tem que escolher o jeito mais semanticamente correto. Se quer encerrar a aplicação imediatamente use o exit(), caso contrário use o return. Muitas pessoas dizem que se o main() está encerrando a aplicação, o exit() é o mais adequado. Nem todo mundo concorda, principalmente em C++. Por isso que é bom entender o funcionamento, as implicações de cada um e não seguir regras cegamente.
Não sei se conta como diferença, por ser uma função, para usá-la precisa usar um #include para ela estar disponível, e se a unidade de código que ela está contida não entraria na aplicação, o executável ficará um pouco maior. O comando está sempre disponível.
Esta não é a resposta que você está procurando? Pesquise outras perguntas com a tag c c++ funções estilo-de-codificação return ou faça sua própria pergunta.

Alexandre III (São Petersburgo, 10 de março de 1845 – Livadia, 1 de novembro de 1894), foi o Imperador da Rússia de 1881 até sua morte. Era o segundo filho do czar Alexandre II com sua esposa, a imperatriz Maria Alexandrovna. Alexandre era um grande conservador e reverteu várias das reformas liberais realizadas por seu pai.
Alexandre nasceu em São Petersburgo, sendo o segundo filho do czar Alexandre II da Rússia e da sua esposa Maria Alexandrovna.
Em personalidade tinha muito poucas semelhanças com o seu pai de coração mole e liberal e ainda menos com o seu tio-avô Alexandre I, conhecido por ser requintado, filosófico, sentimental e gracioso. Apesar de ser um apreciador entusiástico de ballet, ao czarevitch Alexandre Alexandrovitch faltavam o requinte e elegância necessários a membros da realeza. De fato, Alexandre orgulhava-se do fato de ser feito da mesma textura forte que caracterizava a maioria dos seus súditos. A sua honestidade cega, modos abruptos temperados por vezes de mau-humor, encaixavam-se perfeitamente na sua estatura gigantesca. Alexandre era também conhecido pela sua grande força física. A sua educação não foi dada no sentido de suavizar estas características.
“ Depois de uma actuação do ballet "Czar Kandav" no Teatro de Mariinsky, vi pela primeira vez o imperador. Fiquei impressionado com o seu tamanho e, embora fosse desajeitado e pesado, continuava a ser uma figura poderosa. De facto, havia nele algo de "muzhik" (camponês russo). A expressão dos seus olhos brilhantes também me impressionou. Enquanto ele passava por onde eu estava, levantou a cabeça por um segundo e, até hoje, recordo-me do que senti quando os nossos olhos se cruzaram. Era um olhar frio como o aço, no qual havia algo ameaçador, até assustador e atingiu-me como um golpe. Um olhar do czar! O olhar de um homem que estava acima de todos os outros, mas que carregava um fardo monstruoso e vivia cada minuto com medo pela sua vida e pela vida de todos os que lhe eram queridos. Em anos posteriores encontrei-me com o imperador várias vezes e não me senti nem um pouco tímido. Em certas ocasiões o czar Alexandre III chegava a ser gentil, simples e até… caseiro. ”
Durante os primeiros vinte anos da sua vida, Alexandre tinha poucas perspectivas para suceder ao trono russo, uma vez que tinha um irmão mais velho (o czarevich Nicolau Alexandrovich) que parecia ter uma saúde e textura fortes. Mesmo quando o seu irmão mostrou os primeiros sinais de que a sua saúde se estava a deteriorar, a possibilidade de que o herdeiro poderia morrer nunca foi levada a sério. Nicolau ficou noivo da gentil princesa Dagmar da Dinamarca em 1864.
Sob estas circunstâncias, os maiores esforços de educação foram dirigidos para Nicolau e Alexandre recebeu apenas a formação básica dada a um grão-duque da época, que não ia além de uma educação secundária com uma formação básica em línguas como o francês, o inglês e o alemão e muita prática militar.
Alexandre tornou-se herdeiro aparente ao trono depois da morte súbita do seu irmão mais velho em 1865. Foi a partir dessa altura que começou a estudar os princípios das leis e administração sob a orientação de Constantino Pobedonostsev que era, na época, um professor de direito civil na Universidade de Moscovo e que, mais tarde (em 1880) se tornou Procurador Chefe do Concílio Sagrado.
Pobedonostsev não fez com que o seu aluno se interessasse muito por estudos abstratos ou por dissertações intelectuais extensas, mas influenciou o tipo de reinado de Alexandre III, moldando a mentalidade do jovem para acreditar no zelo da Igreja Ortodoxa Russa, vista como um fator essencial do patriotismo russo.
No seu leito de morte, o irmão mais velho de Alexandre, Nicolau, terá expressado o desejo de que a sua noiva, a princesa Dagmar da Dinamarca, se casasse com o irmão mais novo, o que aconteceu no dia 9 de novembro de 1866. A união foi feliz e permaneceu forte até ao fim. Ao contrário dos seus parentes, Alexandre III nunca teve amantes.
Durante os anos em que o seu pai continuou no trono, Alexandre nunca teve um papel proeminente em público, mas deixou bem claro que tinha as suas próprias ideias e que elas não coincidiam com as praticas do governo de Alexandre II. Mais tarde, pai e filho afastaram-se devido às suas diferenças políticas e também ao ressentimento que o futuro czar sentia pelo pai, devido à longa relação que este mantinha com Catarina Dolgorukov, a sua amante mais antiga, de quem tinha filhos ilegítimos, mesmo enquanto a sua mãe, a imperatriz, sofria de uma saúde frágil.[1] Para horror de Alexandre e de toda a corte, o czar acabaria mesmo por se casar com a sua amante apenas um mês depois da morte da sua primeira esposa.[2]
No dia em que Alexandre II foi assassinado, tinha acabado de assinar um decreto que definia a criação de uma comissão consultiva com poderes para aconselhar o monarca. No entanto, quando subiu ao trono, Alexandre III, seguindo o conselho de Pobedonostsev, seu amigo pessoal, decidiu cancelar o decreto antes da sua publicação, deixando bem claro que o sistema de governo autocrático não seria limitado.
Todas as reformas internas levadas a cabo por Alexandre III tiveram como objetivo reverter as políticas liberais que foram implementadas durante o reinado do seu pai. O novo imperador acreditava que, ao manter-se fiel à Igreja Ortodoxa, à autocracia e ao nacionalismo (uma ideologia que tinha sido introduzida pelo seu avô, o czar Nicolau I), iria salvar a Rússia da agitação revolucionária. O ideal político de Alexandre era uma nação composta por uma única nacionalidade, língua e religião, assim como uma única forma de administração. Tentou levar a cabo esta ideia instituindo o ensino obrigatório da língua russa por todo o império, incluindo a súditos alemães, polacos e de outras nacionalidades que viviam na Rússia (com a exceção dos finlandeses), padronizando a Igreja Ortodoxa Oriental, destruindo o que restava das instituições alemãs, polacas e suecas em algumas províncias, e enfraquecendo o judaísmo através da perseguição de judeus. Esta política de perseguição foi legitimada através das "Leis de Maio", publicadas em 1882, que ditaram a expulsão dos judeus de zonas rurais e dos shtetl (mesmo apesar de existirem zonas de assentamento judeu na Rússia) e restringiu as profissões que estes podiam exercer.
Alexandre enfraqueceu os poderes dos zemstva (assembleias regionais eleitas que tinham um sistema semelhante aos conselhos paroquiais britânicos) e colocou a administração das comunidades camponesas sob a supervisão dos proprietários de terras, nomeados pelo governo. Estes "capitães da terra" (zemskiye nachalniki) eram temidos e odiados por todas as comunidades de camponeses do império. Estas acções enfraqueceram a nobreza e o povo e fizeram com que o imperador se tornasse o controlador pessoal da administração do império.