In today’s WDM networks, the dominant cost component is the cost of electronics, which is largely determined by how traffic is groomed at each node. Therefore, the issue of traffic grooming is extremely important in the design of a WDM network. In this article, our goal is to introduce various aspects of the traffic grooming problem to the reader. We start with the static traffic grooming problem and illustrate how it can be solved based on the Integer Linear Programming formulation and various heuristic approaches. We then discuss variants of the problem including grooming dynamic traffic, grooming with cross-connects, grooming in mesh and IP networks, and grooming with tunable transceivers.