In practical terms it will rarely matter, which you choose. A freehand class is created by dragging the margin on the canvass by hand, as opposed to a normal custom class that is created by first giving it a name and then editing inside the class editor.
I suppose a freehand class is essentially more limited in scope at the outset, however it can subsequently be edited inside the class editor. Very often it’s just faster and more intuitive creating freehand classes if your objective is to work with spacing on the page, but I use both equally and never worry about how they were created.
There will be times when you can set up a single class to carry out multiple tasks and other times when you want a class with a very limited scope. That is down to you as the designer.