CSS (Cascading Style Sheets) is used to format and style web pages. There are three ways to add CSS - inline using the style attribute, internally using the <style> tag, and externally linking to a .css file. CSS can control properties like color, font, size, border, padding, and margin. Media queries use the @media rule to apply different styles based on viewport width, allowing responsive design across devices.