XPでは.NETなんて(ごにょごにょ)的な扱いをしてましたが、Linuxとなれば話は別。
まずはHelloWorldってことでこんな感じで。

うん、できた。できたんだけどね。・・・うーん。
ちょっと趣向を変えてこんなのを作ってみました。

5分で作ったメモ帳のようなもの。
OPボタンはOpenFIleDialog呼び出し。Loadボタンで上のテキストボックスを
フルパスとして中身を全部読み込んで、リッチテキストに表示する。
んんー・・・
何に悩んでるかというと、単純な話、monoにGUI(デザイナ)が無いんですよ。
位置やサイズを直値で指定したんで、グリッド等で調整されることもなく汚い。
それに、プロパティとかイベントとか探すのが面倒くさい。
Linux使ってても思ってたことなんですが、LinuxってGUIが弱いというより、
GUIはどうでもいいって考えなんですかね?
まあ確かに私もWindows使ってる時はほとんどキーボードで操作するので、
メニューとショートカットキーと結果が出るウィンドウさえあればいいって
考えなんですが、Develop系ソフトでデザイナが無いとは徹底してますねぇ。
※ monoのGUIデザインは基本的にGTK#とやらでやるらしいんですが、
死ぬほど使い辛かったんで私は当分パス。
後はやっぱ環境の違いでしょうね。それを実感したのがOpenFileDialogのデザイン。

まんまWindowsじゃないですかー!ここLinuxMintですよやだー!
といっても別にパクったわけでも参考にしたわけでもなく、これが一番良かったんでしょうね。
C#はご存知のとおりMSが作ったものですから、それのベースとなる.NETも当然そう。
であれば、当然Windowsに合わせます。当初は別OSで.NETなんて考えもしなかったでしょう。
Windowsでファイラーと言えばExplorer一択ですから、Windowsからしたらこれでいいんですが、
LinuxだとKDEだのGNOMEだのいろいろありますから、OSに依存するわけにもいかない。
となると自前で作るしか無いわけで、ならみんな慣れてる形にしとこうぜ、みたいな。
Linuxって「これだ!これ以外にはありえない!」ってのはほとんどないけど、
「これなら…まあ…」は山ほどありますねぇ。妥協と自作の産物なんだなぁ。
とりあえずmonoに限らずQtとかもやってみようかなと思ってます。
gcc?あれは一番最後。