Переданный в StartCoroutine() метод имеет набор скобок, следующий за именем. Такой синтаксис означает, что вы не передаете имя функции, а вызываете ее. И эта функция работает, пока не встретится команда yield. После этого ее выполнение на время прервется.
Создание сферы, секундная остановка и разрушение сферы
В результате создается впечатление, что сопрограммы работают в фоновом режиме.