using System.Collections.Generic;
public static void Main()
var test2s = new List<Test2>();
var test2sLI = new Test2() { TestString = "TestString"};
var test2s2 = new List<Test2>();
var test2sLI2 = new Test2() { TestString = "test"};
var tests = new List<Test>();
var test = new Test() {What = "What", Test2s = test2s};
var test2 = new Test() {What = "What", Wut = "Wut"};
var test3 = new Test() {What = "What", Wut = "Wut", Test2s = test2s2};
var filtered = tests.Where(x => x.Test2s?.FirstOrDefault()?.TestString != "test").ToList();
foreach(var i in filtered) {
Console.WriteLine("testing: " + i.What + " and: " + i.Wut);
public string What {get;set;}
public string Wut {get;set;}
public List<Test2> Test2s {get;set;}
public string TestString {get;set;}