A module is what we could consider an application within your instance. A module directly contains a set of blocs. Where pages are useful for building the navigation and sitemap of an instance, a module is useful for sorting out different applications within your instance. For example, you might have a CRM module, or Production Process module.
A module with 2 sections containing 5 blocs
Note: Pages and Modules look similar on the front end from a user perspective. For smaller instances a module simply directly loading from the home page might suffice, there may no need for multiples to contain modules.
Although modules are designed as a way to seperate your different applications, modules can also work together. All fields and rules in every module contain the ability to access data in any other module. This means you could have an entire network of modules all working together to perform tasks. For example, you might have a module called "Supplier & Customers", and another module for generating invoices, in the second module can access data like a customer list in the first module.