IntentService работает в отдельном рабочем потоке (Worker thread), выполняя задачи асинхронно. Он обрабатывает намерения (Intent) последовательно в методе onHandleIntent(), останавливаясь автоматически, когда все намерения обработаны. Service, напротив, работает в основном потоке (Main thread) по умолчанию и требует ручного создания отдельного потока для выполнения долгих операций, чтобы не блокировать UI. Service остается запущенным до тех пор, пока его явно не остановят.