Resource loading is the process of assigning tasks. You typically add tasks until the resource is 100% allocated for each day.
Resource leveling looks at time and available resources, and attempts to finish a project by a specific day. The problem here is that the resources may end up severely overloaded. Resource leveling also takes overloaded resources and attempts to bring everyone back to 100% allocation. The problem here is that the end date of the project may be severely impacted and it may be worthwhile compensating the overtime.
In general, for small to medium size (and even some large) projects, it is possible to perform resource loading without overallocating anyone. Resource leveling always has such a severe impact on schedule and resource loading that I advise avoiding it.