If the only variable will be the visibility of components I recommend hiding them with display states instead of suppressing them with configurations. While it may not always be the case, using display states will usually result in a smaller file size, but to me that's a secondary reason. If other components are mated to a suppressed component then those mates will be suppressed, which can obviously cause problems. The mates will remain in effect when a component is hidden in a display state. If there are any disadvantages to using display states I'm not aware of them.
Edit: Just because I wasn't aware of any disadvantages to using display states instead of configurations doesn't mean there aren't any. Please see the comments below. I mainly use display states to hide selected components that I don't want to show in a drawing view, so it's typically done after the Assembly is finished, but as Paul Risley said in the second paragraph, using display states as a design evolves can cause issues (although, the checkbox for "Hide new components when inactive" in the display state Properties will help with that), and I'll agree with him that configurations are easier to edit. And as Dan Pihlaja said, mixing configurations and display states can certainly get confusing. Configurations by themselves can get confusing, as far as that goes, especially if there are multiple layers of Assemblies.
It boils down to you taking the information here, both above and below, and choosing the best option for your situation.