Without debugging information there is no debugging. By default debugging information is included when you build your project with the Debug configuration. Configuring debug information When you create a new project with .NET , Visual Studio provides two default build configurations in your project. Debug and Release . A solution build configration defines which projects are built and deployed for which target platform ( x86 , x64 or Any CPU ) although the platform can be overwritten by the project build configuration. The solution file ( .sln ) holds the values you configured. A project build configuration can define anything you can configure in the project file ( .csproj ). But they are mainly used to configure the target platform, if the output should include debugging information and if the complier should optimize the code. When debugging information is included the default ( Portable for .NET Core and Pdb-only for .NET ) is that a seperate symbol file is beeing create