A Change Set is a group of committable files, assigned with a log message, and is also known as "prepared commit" in other version control systems.
Change Sets are displayed in the Directory Tree, but below the normal project directory structure. You can create a Change Set by selecting the files to assign to the Change Set and invoking Change Set|Move to Change Set. Use the same menu item to add more committable files to the Change Set, to move the selected files to a different Change Set or to remove files from a Change Set. When you are ready to commit, you need to select the Change Set in the directory structure and invoke Modify|Smart Commit. This will add unversioned files, remove missing files and finally commit all files in the Change Set.
The easiest way to assign files to Change Sets is the Change Report using the "Local changes" option. When the project directory structure is selected (as opposed to a Change Set), deactivating the View|Assigned to Change Set option will give a better overview about changes not already assigned to a Change Set.
For easier handling of files not yet assigned to a Change Set, you can deactivate showing them in the project structure with View|Files Assigned to Change Set.
A limitation of the Change Set features is, that a file only can be assigned to one Change Set.