A well-fitting, well-made suit can make almost any man look good. However, the suit isn't the entire outfit. The blazer and pants have to be worn on top of a shirt. There are only certain types of shirts that can be worn with suits, and it is important that you choose the right one with the right fit, style and color to ensure you look as good as you possibly can.
You should always, always wear a button-down shirt with a suit. It is possible to wear a t-shirt under a blazer, but if you're wearing a matching blazer and pants, you need to wear a button-down shirt with them. This is the fundamental rule of what shirt to wear with a suit -- it has to have buttons and a collar. It should also be long sleeve.
Every suit, except possibly a white one, goes with a white shirt, especially darker-colored suits. If you don't want to think too hard about your shirt and suit combination, stick with white. You can't really go wrong, as every tie also works with white, and white makes for a sharp contrast with a dark suit.
You can wear colored shirts with suits, provided they match the tie and the suit. Darker, more obtrusive colors should be avoided in formal situations; a light blue shirt works well for a business meeting. So, when you are choosing colors, you should follow a basic rule: less bold is more formal.
Stripes can be tricky because if they are used incorrectly they become too visually jarring If you have a pinstripe suit, you can wear a striped shirt as long as the stripes are different thicknesses. This will highlight the differences rather than just turning your outfit into a sea of stripes.