Gulp works by reading a configuration file, called gulpfile.js, where tasks are defined and run. The core concepts of Gulp include tasks, sources, and destinations. Tasks are defined to perform specific actions, sources are the input files that the tasks operate on, and destinations are the output files produced by the tasks.