JSON.NET: Why Use JToken--ever?
<p>As a follow up to my question here:
<a href="https://stackoverflow.com/questions/38207050/json-net-obtain-jobject-from-jproperty-value">JSON.NET: Obtain JObject from JProperty Value</a> ...</p>

<p>I read links and digested the above comments and advice. Now I wonder: Is there a good reason why there is no "direct" (i.e., easy) way to turn the Value of a JProperty object into a JObject? It seems like a lot of work to get to a JToken and then have to construct if statements, etc. This isn't to complain about the extra work; rather, it's to admit that I still think I don't understand the true purpose of JToken. At one time, all FedEx packages first routed to Memphis: It seems that all objects can/should go to JToken first then be parceled to the actual target object type. Is that a way to think about it? </p>

<p>In other words, is there ever a good reason to use JToken--or is it just that so many other functions return a JToken and then you have to just deal with that? The JSON.NET manual gives ways to cast JToken to other types (<a href="http://www.newtonsoft.com/json/help/html/Operators_T_Newtonsoft_Json_Linq_JToken.htm" rel="noreferrer">http://www.newtonsoft.com/json/help/html/Operators_T_Newtonsoft_Json_Linq_JToken.htm</a>) but doesn't mention going from JToken to JObject... </p>

<p>I find that JObject is usually what I want to have in order to work with JSON and to map from JSON to my .NET classes and back again--as well as doing a host of other operations. I still wonder what is the compelling reason to ever use a JToken object?</p>