Components are generally regarded as self-contained, pluggable items that follow some sort of software interface specification. A good example is GUI items such as enhanced textboxes and dropdowns. Basically anything that is not a complete program, but which can be plugged into another program to enhance its functionality.
The word Module has fallen out of favor in the past few years. Module is a more generic term, but some languages have it as a keyword, i.e. Modula 2. VB.NET has a Module keyword, but that is just an ordinary class with static members, and my understanding is that most VB programmers prefer to use the Class keyword.