how many items I are there in my ArrayList?
The code you gave should do just that:
// number of items in the ArrayList at key "utterance" + x
wording["utterance"+x].Count;
how to refer to the elements in the list?
You can refer to them by index:
// get the 4th item in the list at key "key"
object myObject = wording["key"][3];
Or you can iterate over them:
foreach (object item in wording["key"])
DoSomething(item);
To summarize, wording is a Dictionary that stores ArrayLists by a string key. You can retrieve a particular ArrayList by indexing with the appropriate string key for that ArrayList.
wording // evaluates to Dictionary<string, ArrayList>
wording["sometext"] // evaluates to ArrayList
Note that the latter will throw an exception if you have not already placed an ArrayList at that key.
wordingis your dictionary this would give you the number of elements in the ArrayList associated with this key. The number of elements (KeyValuePair) in the dictionary itself would bewording.count