Yes, Guzzle uses cURL as one of the underlying HTTP transport adapters. However, Guzzle supports multiple adapters, including cURL, PHP stream, and sockets, which can be used interchangeably depending on your needs. By default, Guzzle uses cURL as the preferred adapter, as it provides a robust and feature-rich API for sending HTTP requests and handling responses. However, Guzzle also provides an abstraction layer that allows developers to switch between adapters seamlessly, without having to modify their application code.
You can read more about it in the official Guzzle docs .