brl-cad is CSG modeler with some BRep support. Opencascade is a BRep modeler that supports boolean operations. The industry gave up on CSG and went BRep decades ago.
Can find indications it's CSG under the hood if it won't let you directly modify a surface without selecting some "convert to editable representation" option. TinkerCAD is an extreme example that's basically a pure CSG modeler (and probably the most popular CAD system to date, but I digress), but you won't find the term union, intersection, or CSG anywhere in its GUI. Solidworks and NX do a really good job hiding it.
IMHO: Any shape defined by a CSG modeling kernel can be defined in a BRep modeling kernel. The reverse is not true, short of some kind of 'hack'. BOT(bag of triangles)? Hybrid with mesh modeling?