Check out the
Wikipedia page on Mandelbrot first. Look for the section "Escape time algorithm".
For colouring, you can consider using a colour lookup table. Generate an array of RGB (red, green, blue) values as the lookup table. Using the "escape value" and/or iteration number, map to an index on the lookup table. Then use the colour from the lookup table thus obtained to colour your pixel.
For example, this should come up with something similar to the ice theme you provided.
CODE
System.Drawing.Color[] lookup = new System.Drawing.Color[256];
for (int i = 0; i < 256; ++i)
{
lookup[i] = System.Drawing.Color.FromArgb(0, 255 - i, 255 - i, 255);
}
The lower the index, the whiter the colour. The higher the index, the bluer the colour.
For more complex colouring, you can try
interpolating between two colours, such dark blue and red in the other example picture. Actually, the code above is interpolating between pure white and pure blue.
I'm afraid you'll have to get your hands into some math formula. You'll also have to come up with imaginative ideas on populating that lookup table, because there are many ways to do so. Only by testing your lookup table can you see if your generated Mandelbrot looks "nice". Visual beauty is better interpreted by humans than by computers.
As for the different Mandelbrot sets you've seen, you can try using a different seed value, or add an offset to your x and/or y coordinates.
I can help more if I can see the code with which you generated the set.