The way that I would do it is to set the Tag property of the tab page to whatever order it should be in. Then whenever you add a page, use the Add method, then iterate through each tab to check which order they should be in, and finally set the proper order then.