As stated by Marius if you want to use the debugger you must have the arduino bootloader installed on your atmega chip. Arduino supports reset via it's reset pin. Upload must be via the main rx/tx or a hardware programmer.
The debug requires a standard upload of the "debug" hex produced by visual micro. After the hex has been uploaded (vm uses avrdude) the debug features are ALL via Serial.
Prior to the debug compile, you have the option to decide on the type of "Transport" for the debugger communications between pc and Arduino or vica versa. The current transport options are any of the serial ports on the Arduino or via any software serial compliant Arduino digital pin.
The debugger requires only one pin unless you want break/pause or to change variable values while the Arduino is running, in which case you need two pins.
If you want the debugger to reset the Arduino each time the debugger starts then you will need to use the main Serial port on the Arduino and to ensure that Dtr is checked on the Serial Monitor.
Keep in mind that an Arduino can be running a debug version of a program for months. The debugger can start and stop without upsetting the currently running Arduino program using any "Transport" method, but reset always needs the main Arduino hardware serial for the transport.
The "Transport" is set in the project properties.
The above info gives a brief overview of some of the options. There are other options but I'm not sure they are required.
Does the above explain what you need or is something missing? If you need something different then let me know and I will try to explain some more stuff