Blocks of code and the semicolon
C# is strict about punctuation. Two characters, the semicolon and the brace, carry most of the meaning about where one instruction ends and the next begins.
The semicolon ends a statement
A statement is one instruction. A semicolon tells the compiler that the instruction is complete. Leave it out and the compiler keeps reading, then complains about the line below.
The brace groups statements
Braces wrap a block of statements that belong together, such as the body of a method or the branch of a condition.
if (isReady)
{
Prepare();
Start();
}Why indentation is not enough
Indentation is for humans. The compiler ignores it. Braces are what the compiler obeys, so the two must agree or the code will do something other than what it looks like.
With statements and blocks understood, you are ready for the decisions and loops track.