Это зависит от того, чего вы пытаетесь достичь, но обычно вы используете GDI +, получая графический объект и затем рисуя на нем:
Graphics g = Graphics.FromImage(bitmap);
Это действительно большая тема, вот несколько уроков для начинающих: GDI + Учебники
Вот фрагмент из учебника по рисованию прямоугольника с градиентной заливкой.
Rectangle rect = new Rectangle(50, 30, 100, 100);
LinearGradientBrush lBrush = new LinearGradientBrush(rect, Color.Red, Color.Yellow, LinearGradientMode.BackwardDiagonal);
g.FillRectangle(lBrush, rect);