1) You need fore knowledge about the business object, in order to define properties that can be filled by the DataContractJsonSerializer from a JSON string.
2) It can be difficult sometimes to infer what the properties are from the string.
3) If it is available, I always suggest looking at the documentation for the API, web service, etc.
4) This process is case-sensitive, so the property names need to match the case for the properties in the JSON string.
4) Here is my take on a class that be built from that JSON string:
Dim json As String = "{""responseData"": {""language"":""en"",""isReliable"":false,""confidence"":0.38233778}, ""responseDetails"": null, ""responseStatus"": 200}"
Dim response As GoogleResponse = JsonObjectSerializer.Deserialize(Of GoogleResponse)(json)