Okey-dokey,
I should really make a webpage for this, Dragon-slaying tips seem to be quite in demand.
Here's my take on Dragon fighting.
If I recall correctly, Dragons are immuned to Fire and Acid, so Fireballs, Flameshield, Melf's Acid Arrow do crap against it, and Flame Arrows only deal the physical damage to it. This is why Magic Missile is so loved in Dragon fights because, Magic Missiles deal Physical damage.
Another thing, Dragons have high magic resistances, so Lower Resist and Pierce Shield are useful on Dragons, they enable you to have a much better chance of getting a spell to hit it.
With all that trivia out of the way, let's go to tactics proper. Note though, the following is a generic tactic, there are various tactics, but any party can use this tactic. Also note, I always assume, your party is in a worse case scenerio, with no uber items and limited spells.
First off, before you go engage the Dragon proper, cast long term spells on your party, Stoneskin for Mages, Melf's Minute Meteors, Haste, etc... ...
When you are in the same room as the Dragon, summon as many summons as you can, do not summon all your best summons though, summon 3 weak ones and 2 good ones.
Once ready, quickly flank the Dragon with your summons and Melee Fighters(MF). Mages and Ranged Units(RU) should stay as far as possible.
If you have Lower Resist and/or Pierce Shield, cast this the moment you can see the Dragon.
Important! Summons should go in front and at the sides of the Dragon, while your MFs should park at the Dragon's back. This is to avoid Wing Buffet and Dragon's Breath.
Whenever the Dragon casts Stoneskin, use
Breach or Dispel Magic to get rid of it.
As summons die summon more, remember, each time the Dragon wastes a round to kill your summon, you gain a round to whack it more for free.
Sometimes the Dragon casts Protection from Magical Weapons, switch to normal weaponary if you have them, or cast a spell to remove the protection.
If you run out of summons,

make one of your MFs the bait and let the Dragon chase after him/her. While your Mages and RUs pelt it.
Also, make your RUs use the best ammunition they have, you are after all, fighting a Dragon.
Whenever any of your party members hit 50% or below, drink a health potion, do not be stingy! Dragons can deal a lot of damage.
Hope this helps.
Other notable tactics
Cast Lower Resist, Greater Malison and Polymorph in that order.
"Look! It's a cute fuzzy-wuzzy bunny!
KILL IT!!!!"
Lay an obscene amount of traps around the Shadow Dragon, get a RU to poke it and watch a Dragon die within a blink of an eye.
Cast multiple CloudKills out of the Dragon's visual range, it will not attack you and will eventually choke to death.
If you don't mind losing equipment, Disintergrate and Flesh to Stone can be used.
If you are high-level enough, Greater Malison followed by Finger of Death.
On the same level, if you have a Mage higher than or equal to Lvl 12, Greater Malison followed by Chromatic Orb.
------------------
If not a Sorcerer, then a Paladin.