Mesclar listas em um

Vi posts como abaixo, que são realmente difíceis de entender. Então, eu estou postando novamente. Desculpe se alguém sente que é duplicado. Eu tenho apenas requisitos simples

Associações de C # / Onde com Linq e Lambda

Eu tenho uma classe como esta

public class Person
{
  public int Id{get;set;}
  public string Name{get;set;}
  public string MailingAddress{get;set;}
}

Eu tenho um método como abaixo

public IList<Person> GetNames(IList<int> ids)

Isso me dará uma lista de pessoas como abaixo

1 "Sam" ""

2 "Dev" ""

4 "Hummy"

Eu tenho outro método como abaixo

 public IList<Person> GetMailingAddress(IList<int> ids)

Isso me dará uma lista de pessoas como abaixo

1 "" "ABC"

6 "" "TTT"

2 "" "XYZ"

Agora preciso mesclar resultados de dois métodos para que eu possa ter meu resultado final como este

1 "Sam" "ABC"

2 "Dev" "XYZ"

ATUALIZAÇÃO: Lamento não ter fornecido claramente meus dados de teste. Veja acima meus dados de teste

questionAnswers(4)

yourAnswerToTheQuestion