Поскольку вы хотите привести SelectedItem непосредственно из ListBox, вы должны добавить их непосредственно в список, например:
foreach (var client in Clients)
{
clientListBox.Add(client);
}
Теперь объекты Client хранятся в ListBox, но строкапользователю, отображаемому в winform (или wpf-приложении, которое вы не указали), будет имя класса, которое не очень важно для пользователя.
Чтобы исправить это переопределение, метод ToString () класса Client
public class Client
{
// you've already written this
public override string ToString()
{
// construct a meaningful string here
return string.Format("{0} {1}", this.FirstName, this.LastName);
}
}