Different between Profile and Role:
Profiles and Roles are two different Types in Salesforce.com.
below is the basic differences between profiles and roles:
Profiles control:-
The objects the user can access
The fields of the object the user can access
The tabs the user can access
The apps the user can access
The page layout that is assigned to the user
The record types available to the user
Profile is required field on User
Role control:-
Record level access can be controlled by Role. Depending on your sharing settings, roles can control the level of visibility that users have into your organization’s data. Users at any given role level can view, edit, and report on all data owned by or shared with users below them in the hierarchy, unless your organization’s sharing model for an object specifies otherwise.
Role is not a required field on User layout.