Phần cứng máy tính là một phần vật lý của hệ thống máy tính và thường được giao nhiệm vụ với các chức năng dành riêng cho loại thiết bị đó, trong khi phần mềm là một tập hợp các hướng dẫn để phần cứng tuân theo khi thực hiện một tác vụ cụ thể. Tuy nhiên, ranh giới giữa phần mềm và phần cứng không phải lúc nào cũng khác biệt.
Hầu hết tất cả các thành phần vật lý của hệ thống máy tính được phân loại là phần cứng, bao gồm bộ phận xử lý trung tâm, màn hình, bàn phím và ổ đĩa cứng. Ngược lại, phần mềm là một loạt các hướng dẫn được lưu trữ trong bộ nhớ của máy tính khiến một phần cứng cụ thể làm thế nào để thực hiện một tác vụ khi các lệnh được thực thi. Ví dụ: một chương trình đơn giản được thiết kế để cộng hai số lại với nhau hướng dẫn bộ xử lý trung tâm của máy tính đọc đầu vào từ bàn phím, đặt các số vào bộ nhớ của nó, cộng các số lại với nhau và cuối cùng là xuất kết quả ra màn hình của máy tính.
Trong hầu hết các trường hợp, phần mềm được tải vào bộ nhớ của máy tính khi nó được sử dụng và được lưu trữ trên ổ đĩa cứng, CD-ROM hoặc thiết bị đa phương tiện khác. Tuy nhiên, một số loại phần mềm được lưu trữ trong bộ nhớ tích hợp với một phần cứng. Phần mềm này thường được gọi là phần mềm cơ sở và nó chứa các hướng dẫn cần thiết cho một phần cứng để thực hiện các tác vụ cơ bản. Ví dụ: chương trình cơ sở của ổ đĩa cứng chứa các hướng dẫn quay đĩa của ổ đĩa và thông tin đọc và ghi.