Each IronPython binary release ships two executable files: ipy.exe and ipyw.exe. Their (only) difference is, ipy.exe is a console application and ipyw.exe is a windows application. So given the following winform.py,

## winform.py
import clr
from System.Windows.Forms import *

class SimpleForm(Form):
    def __init__(self):
        self.Text = 'Simple Winform'


Running it with ipy.exe will keep the associated console; however, if I launch it with ipyw.exe in a console window, I can continue working on other stuffs within that console.



I found that Shawn wrote some background about WINDOW_CUI/WINDOW_GUI subsystem here.