Default mail client
From MozillaZine Knowledge Base
The default mail client is the program that opens when you click a link in another application to send a mail message, for example, when you click on a mailto link or when you click File -> Send link" in Firefox. Note that the default mail client is not as much of an issue when using Mozilla Suite/SeaMonkey because the browser and mail components are integrated (e.g., a mailto link in a SeaMonkey browser window should open SeaMonkey Mail, regardless of your default e-mail client).
This article describes how to configure Thunderbird as the default e-mail client. However, you must also configure any other e-mail clients you run to not attempt to be the default e-mail client or it will have no effect. For example, in Outlook Express you may need to press a button in "Tools -> Options -> General -> Default Messaging Programs" to make the dialog box say "This application is NOT the default mail handler". Note that the calendar in Outlook will not work unless Outlook is the default email client.
If you want to set the default email client for "File -> Send link" check whether your browser has a toolbar or add-on that might set the default email client. For example, if you set "Manage -> Use Gmail for mailto links" in the Google Toolbar it will use Gmail webmail as the default email client regardless of what you set elsewhere. 
You do not need to make Thunderbird the default e-mail client in order to send/receive e-mail. It's used mainly to allow other applications to use Thunderbird to send a message by making SimpleMAPI calls (if your operating system supports MAPI) , or by your clicking on a mailto: URL (in a browser). It also associates Thunderbird with the .EML file extension under Windows (if you're running 1.5 or later) so that if you double click on a .EML file its displayed in Thunderbird.
Note: If you get a Firefox doesnâ€™t know how to open this address because the protocol (mailto) isnâ€™t associated with any program. error message that means that no e-mail client is currently set as the default and you need to set one.
In Thunderbird, go to "Tools -> Options -> Advanced -> General" and select "Use Thunderbird as the default mail application". (In SeaMonkey, go to "Edit -> Preferences -> Mail & Newsgroups" and, under "Make SeaMonkey the default application for:" click "Mail".) If that doesn't take effect right away, try restarting Thunderbird or even the computer once.
If that still doesn't work then another email client (such as Outlook or Windows Mail) is probably also configured to be the default email client. To change the default e-mail program on Windows Vista or Windows 7, go to "Start -> Default Programs -> Set your default programs" and, under Programs, click on "Mozilla Thunderbird", then click on "Set this program as default" and then click OK. If you're running either Windows 2000 (SP3 or later) or Windows XP (SP1 or later) go to "Start -> Control Panel -> Add or Remove Programs -> Set Program Access and Defaults -> Custom", and set "Mozilla Thunderbird" as your default e-mail application.
If you're running Windows XP another solution would be to download the DefaultMail utility and use it to set the default e-mail client. It can also do this on a per-user basis. That's useful if several people share a machine (with their own Windows user account) and each wants to use a different e-mail client as the default e-mail client.
If none of these methods work it might be because your windows account doesn't have the rights to modify the registry. Try using the "run as" command to temporarily run a command/application as a administrator.
Linux - Gnome
If the above menus are not available to you, another way to do it is through the GNOME Configuration Editor:
I used this approach on SuSE Linux 10.0 under GNOME.
Linux - KDE
Opening a mail client, be that Thunderbird or some other email client, can take place either from within integrated KDE applications and "KDE-aware" applictions, or applications like Firefox that do not check KDE's preference settings. In the latter case like Firefox, one must set those preferences directly in the application.
For both cases, the first step is to determine where in your Linux filesystem the desired mail client resides. You will probably want to write this down since in some cases a Modal window or dialog box will be open, sometimes preventing actions to find the Full Path you need.
Setting email client for Firefox in Linux
In Firefox 3 and above, you can do this from Edit > Preferences > Applications, see Changing the mail program used in Firefox.
In earlier versions of Firefox, the following steps will open your preferred email client in Linux when you use Firefox's menus or activate aan email link on a web page in Firefox:
Without restarting Firefox, you can test by opening or switching to another tab. from the Firefox top menu select, "File -> Send Link". Your desired email client should open.
Setting email client for KDE applications
These steps will allow opening your desired email client when operating in an integrated KDE or KDE-aware applicaion.
We need to open the KDE Control Center. Depeneding upon how your menu system is layed out this might be done through one of several selection paths, starting from the bottom Task Bar:
With the KDE Configuration Editor open, now:
Mac OS X
You can also use More Internet.