This guide presents a detailed exploration of methods for gathering software inventory information on Windows systems, specifically addressing the requirements of the 20 Critical Controls for effective network management and security. The document outlines the second control, which emphasizes the need for an accurate software inventory to manage authorized and unauthorized applications effectively. It discusses the challenges organizations face in collecting this information, particularly in terms of budget constraints and resource availability. The guide details three primary command line methods for collecting installed software information: Psinfo.exe, Windows Management Instrumentation (WMI), and PowerShell. Each method is explained with examples, including the necessary commands and expected outputs. The guide aims to provide practical, cost-effective solutions that can be implemented by IT administrators at various skill levels, ensuring that organizations can maintain an accurate inventory of installed software without significant financial investment.