Difference between 1 succeeded and 1 succeeded or up-to-date in c#
Build: 1 succeeded
in general refer to successful compilation of the solution with 1
project in it.
while
Build: 1 succeeded or up-to-date
means that codes in the project within your solution has not changed, hence compilation was not needed. Hence, 1 Build Success or up-to-date
It means nothing has changed in the project. VS (well MSBUILD really), decides if it's up to date as follows:
From: How does MSBuild decide whether it needs to rebuild a C# library or not?
If you look in Microsoft.CSharp.targets (the msbuild file for compiling C# projects) the CoreCompile target has a set of Inputs and Outputs defined. These are used to do the dependency checking to see if CoreCompile needs to run. The list of inputs include the c# files, resource files, application icon, strong name key file, and other custom inputs you can define.
If you have a solution and run msbuild on it with diagnostic logging enabled (/v:diag command line parameter), you might see this message if the outputs are up to date:
Skipping target "CoreCompile" because all output files are up-to-date with respect to the input files.
The targets file is located in the .NET Framework directory (c:\windows\Microsoft.NET\Framework\v3.5 or v4.0.30319.