Restricting search to a user's own department, if the user is not a manager
Merge your if statement into the where clause.

public ActionResult Index()
{
    AD_CurrentUserProfile currentUP = new ActiveDirectory().GetUserProfile(User.Identity.Name.Split("\\".ToCharArray())[1].ToString());

    IQueryable&lt;IPACS_DT_MasterList&gt; model =
        (from d in db.IPACS_Department
                where (currentUP.currentUser.isManager || d.name == currentUP.currentUser.department)
                join f in db.IPACS_Function on d.departmentID equals f.departmentID
                join pg in db.IPACS_Process on f.functionID equals pg.functionID
                join sop in db.IPACS_Procedure on pg.processID equals sop.processID
                select new IPACS_DT_MasterList
                {
                    departmentID = d.departmentID,
                    functionID = f.functionID,
                    processID = pg.processID,
                    procedureID = sop.procedureID,
                    departmentName = d.name,
                    functionName = f.name,
                    processName = pg.name,
                    procedureName = sop.name,
                    owner = sop.owner
                });

    return View(model);
}


If the current user is a manager, the first condition will return true and cause the where statement to short-circuit; otherwise it will compare the department name to the user's department.