lst = {{{a, b}, {c, d}}, {{e, f}, {h, i}}};
You can use Tuples
or Outer
or Distribute
:
Tuples[lst]
{{{a, b}, {e, f}}, {{a, b}, {h, i}}, {{c, d}, {e, f}}, {{c, d}, {h, i}}}
Join @@ Outer[List, ## & @@ lst, 1]
{{{a, b}, {e, f}}, {{a, b}, {h, i}}, {{c, d}, {e, f}}, {{c, d}, {h, i}}}
Distribute[lst, List]
{{{a, b}, {e, f}}, {{a, b}, {h, i}}, {{c, d}, {e, f}}, {{c, d}, {h, i}}}