In case of a new PC I need to get a list of available/connected printers and allow the user to add them, basically doing the "Add printer" functionality from the Printers & Scanners window. Can I do this functionality of a Scan and Add printers in .NET. Are there any libraries which could help me in listing the available printers so that I can select that printer and install? I came across a solution Add-Printer using WMI or PowerShell which does this, but it only adds a PrintQueue. Is the PrintQueue and Printer same or do i need to do something else after creating a PrintQueue in order to actually connect a printer to the PrintQueue. I need to add printer on a freshly installed PC. I need to add printer using TCP/IP Port.