La función recibe un filename(el cual es el nombre del archivo xml), el problema que cuando sigue ejecutando me salta un error: "Error en el documento XML (2, 2)."
La clase pedido es una clase abstracta de la cual heredan: Repartidor, Teléfonico y Mostrador.
Leyendo averigué que las clases abstractas no pueden serializarse ni deserializarse. Entonces como puedo hacer para que me deserialize el xml y me los guarde en la lista?
Gracias y disculpen las molestias

Código:
Public Function Deserialize(ByVal filename As String) As List(Of Pedido)
' Create a Type array.
Dim extraTypes(3) As Type
extraTypes(0) = GetType(Repartidor)
extraTypes(1) = GetType(Telefonico)
extraTypes(2) = GetType(Mostrador)
extraTypes(3) = GetType(PlatoDia)
' Create the XmlSerializer instance.
Dim mySerializer As New XmlSerializer(GetType(Pedido), extraTypes)
' Reading a file requires a FileStream.
Dim fs As New FileStream(filename, FileMode.Open)
Dim unpedido As Pedido
unpedido = CType(mySerializer.Deserialize(fs), Pedido)
Dim lista As List(Of Pedido)
lista = mySerializer.Deserialize(fs)
Return lista

