The first step is to ensure your control can draw the current angle correctly. Once this is done, you will have to instruct it to draw itself regularly.
You can use this call to get the control to paint once again:
Control.Invalidate Method (System.Windows.Forms) | Microsoft Docs[
^]
You call it from a timer - or even call it from within the paint method itself to force a repaint immediately. Experiment a bit to find the best balance between performance impact and a smooth animation.
If you can't get the desired performance, you might need to consider something like WPF or even DirectX - but unless you have very strict requirements or complex rendering you are probably OK with WinForm.