If you are creating your own classes, you should definitely avoid this exponential explosion of constructor combinations. One way to do that is to provide other mechanisms to create instances of the class. There are several general Creational Patterns that can fill this purpose for a variety of specific needs. Design Patterns is a huge topic in its own right, so I suggest you find some reading material to help you along the way.
Also, you probably should revisit your design. Often when you have a lot of parameters for a constructor or several constructors with a wide variety of parameters, it indicates that the class is responsible for too many disparate things. Try refactoring the class into smaller, more manageable chunks, each of which is responsible for a single task. (See Single Responsibility Principle.)