The .NET expert tell me , how to differentiate the const and static read only member.
- Can’t be static.
- Value is evaluated at compile time.
- Initiailized at declaration only.
 Can be either instance-level or static.
 Value is evaluated at run time.
[*] Can be initialized in declaration or by code in the constructor
Biggest operational thing is constants can be used in compile-time constructs, like attributes. Static readonly variables cannot.
major difference is scope.
static would be available for use through entire application.
whereas constant would be within the defining scope.
^^^ not really. Constants also must be attached to classes and they follow that scope. And they can be scoped – we use lots of private constants for magic numbers or strings inside classes.
If the above wasn’t enough, here’s a breakdown of all three components.