These are three different things you can add to a project and I am not quite sure if I understand the difference. They all seem to for example show up in the component toolb
Adding to what Fredrik said, generally components and custom controls would be used when you plan on reusing them across projects. Use user controls when you would only be using it in one project.