To make a Cone:
You can use gl.Cylinder( IntPtr, baseRadius, topRadius, height, slices, stackes);
IntPtr i = new IntPtr();
i = gl.NewQuadric();
gl.Cylinder(i, 0, 2, 8, 120, 16);
I think, Cylinder is likely to use deprecated code (OpenGL 3.0 changed 2008/2009 to use vertex arrays for drawing).
Cylinder I believe, is part of GLUT utility toolkit that I believe uses depreciated OpenGL commands
I would still use this if I could easily change the code if required (used within my company or personal use or update customers code easily).
I guess what will happen at some stage, newer graphic cards will stop supporting OpenGL deprecated code.
Somebody please comment if I'm wrong on any of this (or if correct)!
To draw using Modern OpenGL you would use Vertex Array Object (VAO and VBO)
I would google "OpenGL Cylinder VAO" (which I didn't find much). You might find some C++ code and try to convert.
I would use VAO's and start by drawing triangles then a disk then use the disk points to draw to a point above the disk.