How to: Display Command Line Arguments (C# Programming Guide)


Updated: July 20, 2015

System_CAPS_ICON_note.jpg Note

For the latest documentation on C#, visit the C# Guide on

Arguments provided to an executable on the command-line are accessible through an optional parameter to Main. The arguments are provided in the form of an array of strings. Each element of the array contains one argument. White-space between arguments is removed. For example, consider these command-line invocations of a fictitious executable:

Input on Command-lineArray of strings passed to Main
executable.exe a b c"a"


executable.exe one two"one"

executable.exe "one two" three"one two"

System_CAPS_ICON_note.jpg Note

When you are running an application in Visual Studio, you can specify command-line arguments in the Debug Page, Project Designer.

This example displays the command line arguments passed to a command-line application. The output shown is for the first entry in the table above.

    class CommandLine
        static void Main(string[] args)
            // The Length property provides the number of array elements
            System.Console.WriteLine("parameter count = {0}", args.Length);

            for (int i = 0; i < args.Length; i++)
                System.Console.WriteLine("Arg[{0}] = [{1}]", i, args[i]);
    /* Output (assumes 3 cmd line args): 
        parameter count = 3
        Arg[0] = [a]
        Arg[1] = [b]
        Arg[2] = [c]

C# Programming Guide
Command-line Building With csc.exe
Main() and Command-Line Arguments
How to: Access Command-Line Arguments Using foreach
Main() Return Values