Other than avoiding most VB6 controls (OCX files), I can't think of any "don't use" controls in .NET. They all have their place and purpose.
In some cases you may need (or want) to develop your own control or buy a pre-made control. If so, I'd suggest trying to use a company that either offers source code to their controls, or offers a way to get the code if they go out of business. You wouldn't want to get stuck without source if you find a bug in a 3rd party control one day that stops your app from working.
A common 3rd party control is a DateEdit control. The one that comes with .NET is sooo close to perfect, but doesn't support a "blank" or "null" date, which is often needed. Another common one is a combo that has autocomplete. Luckily, with .NETs inheritence, there are a plethora of samples for you to find that show how to implement this yourself.
Now if you mean to ask when to use a group of radio buttons vs. a ComboBox vs. a ListBox, I'd check out google or MSDN for references on what good GUIs should look like. Microsoft has standards for when to use certain controls (a true/false value should not have a combo with "yes" and "no", but use a checkbox for instance).
-nerseus