Microsoft RDC over RDP is definately your best option in you are running XP Pro at home.
Default port used is 3389.
To make it even easier to connect, goto Control Panel > Add/Remove Programs > Add/Remove Windows Components. Enable Internet Information Server (IIS)... click Details... goto WWW Server (Port 80)... click Details again, and enable Remote Desktop Web Connection.
This allows you to use a web browser (prefereably IE) to RDC into your machine using an ActiveX control rather than carrying around/installing MS's RSC client where ever you go.
Look at free dynamic dns services (if you don't have a static ip) to give your PC a friendly name.
I use
www.no-ip.com free services.
Basically gives my machine the domain name like mypcathome.no-ip.com
So from a web brower, you can go
http://mypcathome.no-ip.com/tsweb (with IIS & RDWC installed and ports enabled for incoming requests)
From the RDWC (/tsweb) page, enter mypcathome.no-ip.com as the server name
Enter Username and Password details, and whammo... you can use your home PC from anywhere effectly.
Any account you set up to use Remote Desktop will require a password.
Answering a question above... If the machine is already logged in, and you log on remotely as the same user, you are automatically taken into there session at its current state. The person sitting at the pc is taken to the XP login screen (the session is locked if you are configured on a domain). If the user logs on again/unlocks the session, the remote session is disconnected, and the user picks up from where they left it. Its only when you remote connect using a different account other than the one logged in at the PC that the user will be prompted to okay your remote request.