Já parou para pensar que se houvesse uma resposta as outras desapareceriam?
E que o que cada um pode dizer aqui é seu gosto, o que usa, para o caso dela, e não para o seu caso?
Eu não desenvolvo mobile, mas se for farei uma análise para o caso que eu preciso fazer. Sei que para muita coisa eu faria só web puro e simples porque as pessoas raramente instalam um aplicativo para usar pouco.
É curioso que as pessoas instalam em desktop e todo mundo quer fazer para web, mas querem o nativo em mobile quando o indicado é web.
Se for um aplicativo que será realmente necessário para a pessoa, haverá adesão, pode valer a pena fazer um aplicativo dedicado.
O melhor resultado sempre será o nativo, onde quer que seja. Isso não se discute. Então seria Swift ou Kotlin.
Mas nem sempre o ideal é interessante. Então o híbrido pode ser mais adequado porque pode ajudar a dar produtividade.
Uma opção que poucas pessoas conhecem que pode ser o ideal em muitos casos é o praticamente nativo. Se você usar Xamarin não estará fazendo nada web ou híbrido (a não ser algum ponto específico que queira fazer assim), será nativo, com uma camada leve que permite o mesmo desenvolvimento ser usado para Android, iOS e até outras plataformas, e pode fazer algum ponto específico mais dedicado e usar o nativo direto, se for importante. Em boa parte dos casos é o melhor dos mundos.
Espero ter pelo menos aberto algum horizonte. Sei que não estou dizendo o que deve usar, mas acho que o objetivo não pode ser esse, só você sabe o que você deve fazer.
Está um pouco datado mas pode ajudar alguém.
Faz sentido?
Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).