Contextual filters are much similar as regular filters in views. The only and main difference between them is in the way values are fetched. A contextual filter allows user to filter content based on dynamic information rather then setting a value manually. Contextual filters provides user more convenience by fetching values from variables instead of programmatically or from a URL.
Here is the complete reference for adding a contextual filter in Drupal Views.