I use the old ActiveX masked edit control that ships with VS.NET. You can add it to your toolbox by selecting Add/Remove Items, then find Microsoft Masked Edit Control on the COM Components tab. I'll bet a lot of the third party alternatives are better or easier to use though. .NET 2.0 does have a good Masked Edit Control, but the issue is that you must apply a fixed-length mask. There is no support for regular expressions so each character in the mask corresponds to one character in the text.