The CS theory courses tend to be the lowest workload of upper level CS courses (anything with programming projects tends to be a big time sink), but they may be intellectually difficult for those who do not handle advanced math that well.
UCB EECS and L&S CS do not specifically require CS 170 (both allow mostly free choice of upper level major courses, with no specific required courses), but that CS 170’s yearly enrollment approximates the number of EECS + L&S CS majors graduating each year, so students in both of these majors generally take it anyway.
MIT course 6-3 requires one upper level theory course, 6.045 or 6.046.
Stanford CS requires one upper level theory course, CS 161.
CMU CS requires one upper level theory course, 15-451.