Предполагая, что вы говорите о типе Nothing:
1. Для функций, которые действительно ничего хорошего не вернут. Т.е. вместо того, чтобы писать дженерик функцию, которая принимает любой тип и кидает исключение, можно просто написать тип Nothing.
2. Как общий подтип для всего. Самый простой случай тут:
val x = null
val i: Int? = x
У x тип вывелся Nothing?, из-за этого его можно присваивать к Int?
3. Как типы для конструкций return или throw. Это позволяет писать условные
val foo = someThingNullable() ?: return 3
val bar = someThingNullable() ?: throw SomethingException()
4. Для функций, которые никогда и не закончатся, поэтому ничего и не могут вернуть.
немного почитать тут:
https://kotlinlang.org/docs/reference/exceptions.html#the-nothing-typeP.S. если вы говорили скорее про Unit, то просто удобный тип, который которым чаще всего обозначается, что функция ничего не вернёт в ответ, а просто сделает что-то в сторонке.