Paint.NET does use GDI for some drawing operations, but is moving away from that. The performance issues you are seeing are because you're drawing on the UI thread. Operations on the UI thread interrupt the message loop and stop your application receiving mouse messages until the operation is finished, making the drawing not smooth.