The Entity Framework makes it incredibly easy to make a UNION query. Below, we are pulling data from the Contents table that is part of my DbContext. I first pull data based on a UserId and then based on a GroupId/ParentId. I call the UNION statement from the first query and then finally call the distinct method to ensure distinct rows are returned.
//user create posts
var queryUserPosts = from contents in this._dbContext.Contents
where contents.UserId == userId
select contents;
//group posts that user is a part of
var queryGroupPosts = from contents in this._dbContext.Contents
where contents.ParentId == parentId
select contents;
//create union
var query = queryUserPosts.Union(queryGroupPosts).Distinct().OrderByDescending(x => x.Id);
query.ToList();