Sitemap

Member-only story

Concurrency vs Parallelism in Swift

4 min readOct 1, 2026

--

Press enter or click to view image in full size

The Mental Picture

Imagine a restaurant.

There are:

2 Cooks
2 Orders

Concurrency

One cook can switch between orders:

Cook
│
├── Order A
│
├── Order B
│
├── Order A
│
└── Order B

The tasks are making progress together, but not necessarily executing at exactly the same instant.

Parallelism

Now there are two cooks:

Cook 1 ─────→ Order A
Cook 2 ─────→ Order B

Both orders are actually being worked on simultaneously.

So:

Concurrency → Multiple tasks in progress
Parallelism → Multiple tasks executing simultaneously

2. What Is Concurrency?

Concurrency means that a program can manage multiple tasks whose execution overlaps in time.

For example:

Task A: ███     ███
Task B: ███ ███

The system can switch between them.

In Swift, concurrency can be expressed using:

Task {
await loadUser()
}

--

--

Niraj Paul
Niraj Paul

Written by Niraj Paul

Senior iOS Developer & Mobile Architect | 11+ Years | Swift, SwiftUI, tvOS & OTT | Building Apps, Exploring AI & Share https://resume.nirajpaul.com