Desktop apps · Comparison
Windows vs macOS vs Linux
The three desktop platforms an app can target. Each has its own audience, its own installer formats and its own rules for trusting downloaded software.
3 options · 9 questions side by side · updated
| Compare | Windows | macOS | Linux |
|---|---|---|---|
| Made by | Microsoft | Apple | Open source, many distributions |
| Runs on | PCs from many makers | Apple hardware only | Almost any hardware |
| Cost to users | A licence, usually bundled with the PC | Free with a Mac | Free |
| Desktop audience | Most desktop users | Large, strong in creative work | Small, strong among developers |
| Native app tools | C#, C++, WinUI, WPF | Swift, SwiftUI, AppKit | C, C++, GTK, Qt |
| Installers | EXE, MSI, MSIX | DMG, PKG | deb, rpm, AppImage, Flatpak |
| Trusting downloads | Code signing plus SmartScreen reputation | Developer ID and notarisation | Signed repositories, no central scheme |
| App store | Microsoft Store, free to join | Mac App Store, via the Apple Developer Program | Flathub, Snap Store |
| On servers | Some, mostly in companies | Rare | Most of the internet |
How to choose between Windows, macOS and Linux
- Target Windows first when the audience is general consumers, offices or PC gamers.
- Add macOS for designers, developers and creative professionals, and whenever the team also ships iPhone apps.
- Support Linux for developer tools and technical audiences, and treat it as the default for servers.
The options
- WindowsMicrosoft's operating system, which runs most of the world's desktop and laptop PCs and is the first target for most business software and PC games.
- macOSApple's operating system for Mac computers. It runs only on Apple hardware, and it is the only system that can build apps for iPhone and iPad.
- LinuxA free, open-source operating system that runs most of the world's servers and cloud machines, many devices and a smaller share of desktops, in many versions called distributions.
More comparisons
- Electron vs TauriBoth put a web interface in a desktop window. The difference is underneath: Electron ships its own Chromium and Node.js with every app, while Tauri uses the system's WebView and a Rust core.
- React vs Vue vs Angular vs SvelteThe four main ways to build interactive web interfaces. Each can build almost anything; they differ in how much they include, how they update the page and how large their communities are.
- Next.js vs Vite vs Astro vs Create React AppFour ways to start a React-based website or app. They are not quite the same kind of tool: Next.js and Astro are frameworks, Vite is a build tool, and Create React App is a retired starter.
- Tailwind CSS vs Radix UI vs shadcn/uiThese three are often named together because they stack: Tailwind provides the styling, Radix provides accessible behaviour, and shadcn/ui combines styling with accessible primitives (Radix or Base UI) into components you own.
- Zustand vs Redux vs TanStack QueryZustand and Redux manage state that lives in the browser; TanStack Query manages data that lives on a server. Many apps use one of the first two alongside the third.
- Framer Motion vs GSAPTwo widely used JavaScript animation libraries. Motion (formerly Framer Motion) fits naturally into React components; GSAP is built for long, precisely timed sequences on any stack.
Crafted in the dark. Shipped to the world.
Tell us what you are building. You get a private project space with a proposal and a line-by-line quote within a day.