Ok there are many questions inside your post, I think I have some of the answers, but not all. Anyway, there is too much things in your question for a single post to cover it all.
First thing to know is that Outlook 2007 has a different way to do things than the previous versions. So you will probably have to do things twice in order to use both Outlook 2003 and 2007.
First thing to know is the vocabulary that will help to search what you need. In Outlook 2003, you will use Custom Forms to create or extend forms. In Outlook 2007, you will use the new Form Regions. Although they are similar in concept, they are 2 different things.
Since I've worked only in Outlook 2007, what I say next only apply to that.
You will need to have either Visual Studio 2005 and download VSTO (Visual Studio Tools for Office), or Visual Studio 2008.
A form region has one of 4 types : Adjacent, Separate, Replace or Replace-All. Adjacent means its displayed at the bottom of the default form. Separate means it is a new "page" inside the form. Replace means it replaces the first page of the default form, and Replace all means it replaces all the page of the default form.
You said you wanna use Tabs. In Outlook 2007, you shouldn't. You should use separate pages, to respect the UI principles in Outlook 2007. You may create Tabs, but you will see they will appear quite ugly. On the other hand, Separate pages appear in the Ribbon, which allows you to switch easily from one page to another.
You have two ways to design Form Regions. The first, recommended way, is the designer inside Outlook 2007 : something like "Tools > Forms > Create a Region Form". You design inside this thing, save the form as a .ofs file and then import it into Visual Studio.
Advantages :
- Recommended by Microsoft, so almost all the resources about customising Outlook 2007 uses this method.
- Ready-made controls for Outlook (for example fields designed to hold mail addresses).
- Automatic bind to UserProperty in your mail.
Drawbacks :
- Crude designer (it's hard to get things aligned properly).
- Whenever you want to update your form, you will have to modify it in Outlook, and upload it again in Visual Studio, which will erase your previous code.
- Old COM controls which are awful to work with.
The other way, is to design a new Region Form in Visual Studio.
Advantages :
- You have all the latest, powerfuls, winforms control you want.
- Better designer.
- Easy to update.
Drawbacks :
- You won't find much information about it, since most book authors only use the Outlook designer.
- You will have to code by yourself many behaviors you take for granted in Outlook (such as, creating a textbox which can hold and check multiple mail addresses) which is quite painful and may be hard to do.
I think you can send your custom forms (at least those designed in Outlook) with a mail, but I'm not sure since I've never tried it myself.
As for the binding, you will probably be able to do this with event. For example, there are events that are triggered before saving or sending a message.
That's all for now, I hope i'm not off-topic with my long answer, and that it can help you determine exactly what you want to do. You should get some idea of what Outlook allows you to do and then ask more specific questions on each point.