Ve všech C-like jazycích se složené závorky používají pro uzavření souvisejícího kódu. V Pythonu se víceméně to samé dělá odsazením. Odsazení se v C# používá taky, ale pouze pro zpřehlednění kódu a na funkci nemá vliv. U Pythonu je nutné ho dodržovat, bez něj to bude dělat něco jiného.
C#:
if (a == 1)
{
uvnitr1
uvnitr2
}
venku1
venku2
Python:
if a == 1
uvnitr1
uvnitr2
venku1
venku2
Java a JavaScript je opravdu něco jiného.
Literaturu nevím, na webu jsou toho mraky.
Visual Studio je pro C# jasný první volba, ale dá se použít i Visual Studio Code - a to klidně pro obojí, C# i Python.