Todas essas funções funcionam de maneira semelhante, no sentido em que permitem alterar o escopo da função ou variável atual e, ao mesmo tempo, aplicar várias operações nessa mesma variável, tudo no mesmo lugar. Segue um flowchart bem interessante que encontrei em uma publicação no Medium/androiddevelopers para auxiliar na escolha:

Segue a tabela tradicional:
Links:
KotlinExpertise.com – scope-functions
MediumAndroidDev – Standard Functions cheat-sheet
GitHub-Kotlin-std-fun
Medium – Standard Functions
Kotlin – Dicas de como utilizar as Standard Funcions – ‘run’, ‘let’, ‘apply’ and ‘also’ (Kotlin Standard Functions cheat-sheet)