Software of programmatuur is een geheel van computerprogramma's met bijbehorende data, die bewerkingen en taken uitvoeren.
Naast toepassingen voor mainframes, personal computers en spelcomputers, bevatten ook televisies, telefoons, telefooncentrales, auto's en machines sinds de jaren zeventig steeds vaker embedded software. Ook apps op een smartphone of tablet worden software genoemd.

Software kan worden ingedeeld naar toepassingsgebied of gebruikersgroep.
Het begrip "software" komt uit het Engels en is de tegenhanger van hardware (apparatuur), waarmee alle "tastbare" apparatuur wordt bedoeld.  Het onderscheid tussen software en hardware is niet altijd eenduidig aan te geven. Ter wille van betere prestaties worden sommige functies in hardware geïmplementeerd,  die evengoed in de vorm van software gerealiseerd kunnen worden. Bovendien zijn er tussenvormen, zoals firmware (software die in hardware is vastgelegd).
Software is alles wat op de computer wordt geïnstalleerd en vervolgens op het beeldscherm wordt getoond en gebruikt.

Systeemsoftware
Systeemsoftware wordt ook wel een besturingssysteem genoemd, met als bekende voorbeelden Windows, Mac OS en Linux.
Dit zijn alle programma's die nodig zijn voor het functioneren van het computersysteem, bijvoorbeeld programma's om bestanden te kopiëren (cp of copy), te verwijderen (rm of del), mappen aan te maken en de inhoud van een bestandssysteem zichtbaar te maken (ls of dir).
Typische onderdelen zijn BIOS, device drivers en interrupt service routines. Deze laag wordt ook wel low level software genoemd.

De kernel: deze implementeert alle diensten die voor het hele systeem beschikbaar (moeten) zijn zoals multitasking, geheugenbeheer en semaforen.
Programmabibliotheken met specifieke functionaliteit, zoals netwerkabstracties (bv. TCP/IP), implementaties van specifieke bestandssystemen, grafische routines en basisbibliotheken voor specifieke computertalen.
Daemons, processen die weliswaar niet bij de kernel horen, maar wel noodzakelijk zijn voor het functioneren van het systeem zoals programmamanagers, printermanagers, windowmanagers en cronachtige programma's. Daemons worden (in de regel) door het systeem zelf gestart en zijn voortdurend actief.
Om te kunnen werken hebben computers ten minste firmware nodig, bijvoorbeeld het BIOS van een pc, maar in de regel bevat een computer een grote verscheidenheid aan software.