When you apply "readonly" keyword to a reference, you prevent the reference from changing the object it is pointing to but it is legal to change the object itself.
In your case, when stringTest is first initialzed, you are not allowed to create a new List<string> object and assign it to stringTest later in your application.
class Test
{
private readonly list<string> stringTest = new List<string>();
test(){}
void changeStringTest()
{
stringTest = new List<strnig>();
stringTest.Add("hello");
}
}
</strnig></string></string>