Assuming I want to use a xib in interface builder, to add a UIViewController in Monotouch you can simply use the “Add new file” option in MonoDevelop and select it from the Monotouch templates.
What is the best way to add a specialized controller such as a UIPageViewController or a UINavigationController?
These special controllers do not need subclassing. Most of them are not even meant to be subclassed. Just declare them in code as class variables. If, on the other hand, you still want to use them in XIBs, add a new UIViewController in MonoDevelop. Then, open the XIB in Xcode and change its class to the type you want, eg. UINavigationController.
You can do that by selecting the controller (File’s Owner) and then typing the class name on the pane on the right: