The main difference between Matrix and Content Elements is, that in Matrix, you as the admin of the site determine what EXACT FIELDS you want the publisher to use. Let’s say you allow your publisher to use the following fields in Matrix:
Text field / Image
Once setup, you will be able to add an unlimited number of rows in Matrix, each representing a Text field and Image.
On the other hand, in Content Elements, on the admin level, you determine what FIELD TYPES (elements) you want the publisher to use. Let’s say you allow your publisher to use the following field types in Content Elements:
Text field / Image gallery / Table / Code / Rich-text element
Once setup, your publisher will be able to determine what elements he would like to build the content from. Additionally, he will be able to use the elements in whatever order he want. Each content element is presented on a separate “row”, however each row can basically be a totally different element. So there’s no limitation of what fields and what order to choose.