На сколько я знаю, корутины в Unity реализованы через IEnumerator и объекты WaitForSeconds.
IEnumerator и IEnumerable - это стандартные интерфейсы, которые используются для реализации перечислений/коллекций и итераторов.
А вот ожидание в C# ты можешь получить через метод Thread.Sleep (в синхронных методах) или await Task.Delay (в асинхронных методах).