Query builder with OOP design
welcome to code review.

Your organization is clean, I mostly just see a few holes in your logic:


Combining groups - A group applies the same operator (and, or) to all rules in it.  e.g. rule1 AND rule2 AND rule3.  However, since groups cannot contain other groups, you cannot combine operations, e.g. rule1 AND (rule2 OR rule3)
Missing Operator/condition - you should add NOT to your enum(s) of operators and/or conditions
Rule Type - I'm not sure what the purpose of this enum is.  If you think that you need it, you could leave it is as, or alternatively make an IRuleParent interface, then make ConditionRuleParent and GroupRuleParent subclasses (this would be the more C#-ish way to model it).  By doing it the swcond way, you can declare the type (condition/group) in the class name when you instantiate it, rather than tacking it on as a mandatory argument.
Clunky syntax - it's object oriented, but very verbose to use and mentally parse, which leads us to...
Greenspun's tenth rule - Any sufficiently complicated C or Fortran program contains an ad-hoc, informally-specified, bug-ridden, slow implementation of half of Common Lisp. (or LINQ in this case).  While there are benefits to rolling your own implementation, you are basically recreating a subset of LINQ (the fluent syntax style).  If you want something like LINQ, just use LINQ.  If you are rolling your own, you might want to spend a little bit of time learning how it works (from a user point of view, at a minimum) and then steal ideas from it as you write your own version.