The section should help you understand these basic differences.
Field name is an internal Clover denotation used when e.g. metadata are extracted from a file. Field names are not arbitrary - you cannot use spaces, diacritics nor accents in them. The field names serve as an identifier - it must be unique within the record.
Field label is automatically copied from the field name and you can change it without any restrictions - accents, diacritics etc. are all allowed. What is more, labels inside one record can be duplicate. Normally, when extracting metadata from e.g. a CSV file, you will get field names in a "machine" format. You can then change them to neat labels using any characters you want. At last, writing to an Excel file, you let those labels become spreadsheet headers. (Write field names attribute in some writers, see Chapter 54, Writers)
Description is a pure comment. Using it, you give advice to yourself or other users who are going to work with your metadata. It produces no outputs.