A while ago, I helped write an article for the InfoPath team on how to write InfoPath Custom Controls using C#.


Warning, there isn't really full support for C# Controls in InfoPath, so beware, you might need to write workarounds. The supported languages are VB6 written controls and C++ ones.