Other than avoiding most VB6 controls (OCX files), I cant think of any "dont 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, Id 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 wouldnt 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 doesnt 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, Id 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