CSS is used to style and lay out web pages. It allows control over text formatting, element sizing and positioning, and other design elements. There are different types of CSS including inline, embedded, and external stylesheets. CSS selectors are used to target specific HTML elements for styling. Common CSS properties control elements like text styling, links, borders, positioning, and more.