I use AppendMenu() to set up my menus, and then you just create another menu and set it as a child of another menu.
Code:
//Handles for menu
MainMenu = CreateMenu();
SubMenu = CreatePopupMenu();
//File menu
AppendMenu(MainMenu,MF_POPUP|MF_STRING,(UINT)SubMenu,"&File");
AppendMenu(SubMenu,MF_POPUP,FILE_RESET,"Reset");
AppendMenu(SubMenu,MF_SEPARATOR,NULL,NULL);
AppendMenu(SubMenu,MF_POPUP,FILE_EXIT,"Exit");
SubMenu = CreatePopupMenu();
HMENU SubMenuTwo = CreatePopupMenu(); //create submenu
AppendMenu(MainMenu,MF_POPUP,(UINT)SubMenu,"&View");
AppendMenu(SubMenu,MF_POPUP|MF_STRING,EXTENDED,"Extended View");
AppendMenu(SubMenu,MF_POPUP,(UINT)SubMenuTwo,"Reference");
AppendMenu(SubMenuTwo,MF_POPUP,REF_OPEN,"Open References"); //this is the submenu and the 'parent' is "Reference"
SubMenu = CreatePopupMenu();
AppendMenu(MainMenu,MF_POPUP,(UINT)SubMenu,"&Options");
AppendMenu(SubMenu,MF_POPUP,OPTIONS_CH,"Options Choices");
SubMenu = CreatePopupMenu();
AppendMenu(MainMenu,MF_POPUP,(UINT)SubMenu,"&Help");
AppendMenu(SubMenu,MF_POPUP,ABOUT_ABOUT,"About");
AppendMenu(SubMenu,MF_POPUP,INFO,"Info");
//Make menu appear on screen
SetMenu(hwnd,MainMenu);