You should get familiar with using the dev tools (f12) or a tool like Fiddler to analyse the traffic between your browser and the server as it often reveals more detailed error, and shows to exactly what data you are sending and receiving.
First off your web method has to be static
public static Cascading2[] BindSubfolder2(string Value2)
Secondly your data is returned as a property called "d".
success: function (result2) {
$.each(result2.d, function () {
$("#<%=DropDownList2.ClientID %>").append($("<option></option>").val(this['RemoteURL']).html(this['RemoteNumber']));
});
},