Если мы не указываем очередь для выполнения задачи, будет ли система использовать основную очередь для ее выполнения?
Не обязательно. Когда вы говорите
let image = downloadImageFromInternet()
, вы уже в какой-то очереди. Поскольку вы не укажете иначе, это очередь, в которой вы делаете вызов. Какая это очередь, зависит от того, как этот код был запущен. Единственный способ, которым код когда-либо запускается, в конечном счете, потому что среда выполнения назвала его Среда выполнения вызывает ваш код в некоторой очереди. Если в документации не указано иное, это будет основная очередь, но всегда проверяйте, чтобы убедиться.