Offset printing, also called lithography or offset-litho, is a printing process where ink is transferred from a metal plate to a rubber sheet, which is then rolled onto the substrate paper. Offset printing includes 3 layers of material, 2 of which are printed on and 'laminated' (glued) onto either sides of the third.
As seen in the image above, ink rollers along with water rollers help transfer the ink onto the printing plate which then transfers it onto the substrate. This layer is then laminated (e.g. glued) to the corrugated board. Offset printers usually have ink in the CMYK colour system, and using the CMYK color system would require 4 plates, one for each of the CMYK colors. Offset printers can also work with PMS colors and combinations.
Printing on a smooth substrate as opposed to a corrugated cardboard results in higher quality print. The downside, though, is that it makes the box a bit thicker/heavier given the layers.
Generally, offset printing is suitable for large printing jobs and the price tends to go down with the increase in the number of printing jobs. Offset printing also yields the highest quality print in terms of color, sharpness, and crispness.
Flexography, also called flexo, uses only 1 layer of material to print on.
Flexography involves flexible plates that transfer ink directly onto the corrugated board, and so there is no need for extra substrate/material. Flexography is generally cheaper than offset printing. However, the print quality will be poorer. It is also harder to produce some effects of tint when printed directly onto the substrate.
Flexo image plates are also generally cheaper to create, and they can be reused multiple times before replacement.
For a comparison of the different types of printers, check out this blog post on Offset Printing vs. Digital Printing vs. Flexography.