C# related
Scenario 1: readonly keyword field/data member in a class will be initialized only once. So multiple instance of that class would exist with different values of that readonly data member. Methods and properties within that class will never modify this data member.
Scenario 2: const keyword field/data member in a class will be declared and initialized only once within same statement. Otherwise compiler generates error. In this case data member marked as const will hold the same value for multiple instances created for this class.
scenario 2 can also be achieved using static variable.
Then why there was a need to have const keyword in C#?