What is the difference between 32-bit and 64-bit?
It refers to the width of the data a processor handles at once, and more importantly to how much memory it can address. The practical consequences are almost entirely about memory.
The memory limit is the headline difference. A 32-bit system uses 32-bit memory addresses, giving 2³² distinct addresses — about 4.29 billion bytes, or 4GB. In practice usable memory is lower, often around 3.2–3.5GB, because address space is also consumed by hardware devices. This is a hard architectural ceiling, and it is why 32-bit systems became untenable as memory grew cheap.
A 64-bit system uses 2⁶⁴ addresses — around 16 exabytes in theory. Real implementations limit this to far less, but it is orders of magnitude beyond any practical requirement.
Other differences:
Register width. 64-bit processors handle 64-bit integers natively, so calculations on large numbers take one operation rather than several.
More registers. The x86-64 architecture doubled the number of general-purpose registers, which genuinely improves performance because fewer values must be spilled to slower memory.
Better security features. Address space layout randomisation is far more effective with a large address space, and some hardware protections are 64-bit only.
Compatibility, which is where confusion arises:
64-bit operating systems generally run 32-bit applications. Windows does this through WoW64; most Linux distributions require compatibility libraries.
32-bit operating systems cannot run 64-bit applications at all.
Drivers must match the OS, not the application.
What has happened since. 32-bit support is being withdrawn broadly. macOS dropped 32-bit applications entirely in Catalina; many Linux distributions have discontinued 32-bit builds; Windows 11 has no 32-bit version. For most people the question no longer arises.
Embedded systems still use 32-bit and even 8-bit processors widely, where memory needs are small and cost matters.