I'm a hobby VB6 programmer who would like to transition to .Net. Three questions that may sound silly.

1) Will my new .Net apps run on older Vista and XP machines?

2) If I develop on a new machine, say Win8, does that in any way affect the backwards compatibility of my .Net Apps with Vista/XP.

3) Is there any reason why I can't program in .Net on my current XP machine?

Thanks very much!