The main difference between the two is that in a license the person granting permission (Licensor) retains an interest in the property being licensed, whereas in an assignment the assignor transfers his rights in the property being assigned.
In intellectual property, a license may grant a licensee to use a patent, trademark, software, etc. without being sued. Licenses come in many different flavors and pretty much any type of provision can be worked into a license such as the length of the license, the territory where a license may apply, the nature of the license (exclusive vs. non-exclusive), etc. If an inventor/start-up company obtains a patent, they may license their patent to another person or company in exchange for royalties. As previously discussed, the rights given in different licensees may vary and overlap. For example, if company A obtained a patent, they can have a non-exclusive license to company B for 10 years in North America, and have a non-exclusive license to company C for 5 years without territorial exclusions. As such, different terms for licensees may be contracted with different companies. If company A granted an exclusive license to company B for the full length of the patent along with derivative works, then the license will essentially work as an assignment.
A major difference between licenses and assignments is that assignments are required to be in writing whereas licenses may be applied without writing. Specifically, patents may be licenses orally (in some circumstances) whereas assignments for patents must be in writing and filed with the USPTO. One such example of an implied license is if a user purchases a product at a retail store. It is implied that they are able to use the product or display it in pictures, etc. As such there is an implied license that grants the user limited rights without any writing.
Because assignments grant an assignee full ownership of a piece of property, typically to acquire an assignment will cost more than to acquire a license.