The following is the code generated by the XSD tool from the schema xmlrpc_v0.2.xsd, without modification. See this blog entry to follow or find the updated version.
//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:2.0.50727.3074
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

using System.Xml.Serialization;

// 
// This source code was auto-generated by xsd, Version=2.0.50727.3038.
// 


/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
[System.Xml.Serialization.XmlRootAttribute(Namespace="", IsNullable=false)]
public partial class methodCall {
    
    private string methodNameField;
    
    private methodCallParams paramsField;
    
    /// <remarks/>
    public string methodName {
        get {
            return this.methodNameField;
        }
        set {
            this.methodNameField = value;
        }
    }
    
    /// <remarks/>
    public methodCallParams @params {
        get {
            return this.paramsField;
        }
        set {
            this.paramsField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
public partial class methodCallParams {
    
    private parameter[] paramField;
    
    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("param")]
    public parameter[] param {
        get {
            return this.paramField;
        }
        set {
            this.paramField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
public partial class parameter {
    
    private value valueField;
    
    /// <remarks/>
    public value value {
        get {
            return this.valueField;
        }
        set {
            this.valueField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
public partial class value {
    
    private object itemField;
    
    private ItemChoiceType itemElementNameField;
    
    private string[] textField;
    
    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("array", typeof(array))]
    [System.Xml.Serialization.XmlElementAttribute("base64", typeof(byte[]), DataType="base64Binary")]
    [System.Xml.Serialization.XmlElementAttribute("boolean", typeof(bool))]
    [System.Xml.Serialization.XmlElementAttribute("dateTime.iso8601", typeof(System.DateTime))]
    [System.Xml.Serialization.XmlElementAttribute("double", typeof(double))]
    [System.Xml.Serialization.XmlElementAttribute("i4", typeof(int))]
    [System.Xml.Serialization.XmlElementAttribute("int", typeof(int))]
    [System.Xml.Serialization.XmlElementAttribute("string", typeof(string))]
    [System.Xml.Serialization.XmlElementAttribute("struct", typeof(@struct))]
    [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")]
    public object Item {
        get {
            return this.itemField;
        }
        set {
            this.itemField = value;
        }
    }
    
    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public ItemChoiceType ItemElementName {
        get {
            return this.itemElementNameField;
        }
        set {
            this.itemElementNameField = value;
        }
    }
    
    /// <remarks/>
    [System.Xml.Serialization.XmlTextAttribute()]
    public string[] Text {
        get {
            return this.textField;
        }
        set {
            this.textField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
public partial class array {
    
    private arrayData dataField;
    
    /// <remarks/>
    public arrayData data {
        get {
            return this.dataField;
        }
        set {
            this.dataField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
public partial class arrayData {
    
    private value[] valueField;
    
    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("value")]
    public value[] value {
        get {
            return this.valueField;
        }
        set {
            this.valueField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
public partial class faultStruct {
    
    private faultStructMember[] memberField;
    
    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("member")]
    public faultStructMember[] member {
        get {
            return this.memberField;
        }
        set {
            this.memberField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
public partial class faultStructMember {
    
    private string[] nameField;
    
    private value[] valueField;
    
    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("name")]
    public string[] name {
        get {
            return this.nameField;
        }
        set {
            this.nameField = value;
        }
    }
    
    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("value")]
    public value[] value {
        get {
            return this.valueField;
        }
        set {
            this.valueField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
public partial class faultValue {
    
    private faultStruct structField;
    
    /// <remarks/>
    public faultStruct @struct {
        get {
            return this.structField;
        }
        set {
            this.structField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
public partial class fault {
    
    private faultValue1 valueField;
    
    /// <remarks/>
    public faultValue1 value {
        get {
            return this.valueField;
        }
        set {
            this.valueField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
public partial class faultValue1 {
    
    private faultValue valueField;
    
    /// <remarks/>
    public faultValue value {
        get {
            return this.valueField;
        }
        set {
            this.valueField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
public partial class member {
    
    private string nameField;
    
    private value valueField;
    
    /// <remarks/>
    public string name {
        get {
            return this.nameField;
        }
        set {
            this.nameField = value;
        }
    }
    
    /// <remarks/>
    public value value {
        get {
            return this.valueField;
        }
        set {
            this.valueField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
public partial class @struct {
    
    private member[] memberField;
    
    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("member")]
    public member[] member {
        get {
            return this.memberField;
        }
        set {
            this.memberField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
[System.SerializableAttribute()]
[System.Xml.Serialization.XmlTypeAttribute(IncludeInSchema=false)]
public enum ItemChoiceType {
    
    /// <remarks/>
    array,
    
    /// <remarks/>
    base64,
    
    /// <remarks/>
    boolean,
    
    /// <remarks/>
    [System.Xml.Serialization.XmlEnumAttribute("dateTime.iso8601")]
    dateTimeiso8601,
    
    /// <remarks/>
    @double,
    
    /// <remarks/>
    i4,
    
    /// <remarks/>
    @int,
    
    /// <remarks/>
    @string,
    
    /// <remarks/>
    @struct,
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
[System.Xml.Serialization.XmlRootAttribute(Namespace="", IsNullable=false)]
public partial class methodResponse {
    
    private object itemField;
    
    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("fault", typeof(fault))]
    [System.Xml.Serialization.XmlElementAttribute("params", typeof(parameter))]
    public object Item {
        get {
            return this.itemField;
        }
        set {
            this.itemField = value;
        }
    }
}