Swift Concurrency: Parallelism

In the previous post, we loaded three independent requests sequentially. Even though the operations didn’t depend on each other, each one waited for the previous to finish To run them in parallel while keeping structured concurrency, Swift gives us two main tools: async let and TaskGroup. When to use async let Let’s start with async let. It allows you to fire off multiple operations in parallel within the same task context: ...

December 12, 2025 · 5 min · Luke Jones

Swift Concurrency: From Closures to async/await

One of the biggest changes in Swift since I’ve been away is how we handle concurrency. Back in iOS 15, we got our first taste of Swift Concurrency with async/await. At the time, most of us were still relying heavily on Combine or traditional closures to handle asynchronous work. I had played around with it a little back then, but its practical use was limited because it couldn’t be deployed widely on older iOS versions. ...

December 10, 2025 · 3 min · Luke Jones