Frames allow dividing an HTML page into multiple sections or cells. A frameset defines rows and columns to divide the browser window. Individual frames are populated by specifying the SRC attribute. Frames can be nested to create complex layouts. The TARGET attribute is used to load content into a specific named frame. While frames provide layout benefits, they also have disadvantages like confusing the back button and making content difficult to bookmark.