The difference is between a good answer and an answer you can carry on working with. If a human reads the output, free text is perfect. If anything else handles it — a spreadsheet, a database, a script, another agent — you need a predictable shape, or every other run will leave the data somewhere else.
It has three levels. The first is asking for the format in words ("three columns: date, amount, partner"). The second is giving it a schema to conform to. The third is the provider guaranteeing schema-valid output. Most people get stuck on the first, even though the second is well within their reach — and that one is already an order of magnitude more reliable.
The most common misconception is that structured output makes the content more accurate too. It does not: it guarantees the shape, not the correctness of the data. A flawless JSON can still carry the wrong amount.
The three levels and the practical business of writing a schema are the subject of Structured Output: Asking for a Table, JSON or a List, a separate article. Directly related terms: prompt, tool use and function calling.