The geometry kernel of the developmental Monte Carlo transport code MC21 is designed as a combination of the geometry capabilities of several existing Monte Carlo codes. This combination of capabilities is intended to meet efficiently the general requirements associated with in-core design products and, at the same time, be flexible enough to support highly general geometric models. This paper provides a description of the different geometry representations of MC21 and outlines how the geometric data is stored internally through the use of Fortran-90 data structures. Finally, two alternative geometric representations of a published BWR unit assembly model are discussed. Results for the two representations are contrasted, including k-effective results, relative memory footprints, and relative computational speeds. While total memory footprint is not noticeably reduced, results show significant speed advantages of one representation.