This is the JSON I get from a request on .NET:
{
\"id\": \"110355660738\",
\"picture\": {
\"data\": {
\"url\": \"https://fbcdn-profile-a.akama
No need for Linq, just use dynamic (using Json.Net)
dynamic obj = JObject.Parse(json);
Console.WriteLine((string)obj.picture.data.url);
Linq version would not be much readable
JObject jObj = JObject.Parse(json);
var url = (string)jObj.Descendants()
.OfType()
.Where(p => p.Name == "url")
.First()
.Value;
Documentation: LINQ to JSON