フォームの右上にある閉じるボタン(x)を無効にするには、Windows APIを利用する必要がある。
この場合に利用するAPIは、GetSystemMenuとRemoveMenuを利用する。

サンプルのソリューションは、こちら(FormCloseControlSample.zip)からダウンロードできます。
VB 2005で作成しています

以下、サンプルの説明。
《Win32APIモジュール》
'DLLImportを利用する場合には、Importsしておく
Imports System.runtime.InteropServices

Module Win32API
 'APIで利用する定数の宣言
 Public Const SC_CLOSE As UINT32 = &HF060
 Public Const MF_BYCOMMAND As UINT32 = &H0

 'GetSystemMenu(システムメニューのハンドルを取得する)
    SetLastError:=True)> _
 Public Function GetSystemMenu( _
  ByVal hwnd As IntPtr, ByVal bRevert As Boolean) As IntPtr
 End Function

 'RemoveMenu(指定したメニューからメニュー項目を削除する)
    SetLastError:=True)> _
 Public Function RemoveMenu( _
  ByVal hMenu As IntPtr, ByVal nPosition As UINT32, _
  ByVal wFlags As UINT32) As Long
 End Function
End Module

《MainForm(フォーム)》
Public Class MainForm
 Inherits System.Windows.Forms.Form

 Private Sub MainForm_Load(ByVal sender As System.Object, _
  ByVal e As System.EventArgs) Handles MyBase.Load
  'メニューを無効化する
  Dim hMenu As IntPtr
  'ウィンドウのメニューハンドラを取得する
  hMenu = GetSystemMenu(Me.Handle, False)
  '閉じるメニューを押下した場合の動作を無効化する
  RemoveMenu(hMenu, SC_CLOSE, MF_BYCOMMAND)
 End Sub

End Class

フォームに配置した閉じるボタン以外での終了を認めない場合には、サンプルの"フォームを閉じるボタン以外で、フォームを閉じるのを禁止する"に記載されているコードを有効にすれば良い。
これで、ショートカットキー(「Altキー」+「F4キー」)を利用した終了も禁止することができる。

【補足事項】
・フォームのタイトルバーに表示される「最小化」「最大化」「閉じる」ボタンを総称し、ウィンドウメニュー(または、コントロールメニュー)と呼ぶ。
・フォームのプロパティで以下のような設定ができる。
 1.最小化ボタン(_)を使用不可にする。
  →MinimizeBoxプロパティをFalseにする。
 2.最大化ボタン(□)を使用不可にする。
  →MaximizeBoxプロパティをFalseにする。
 3.ウィンドウメニューを非表示にする。
  →ControlBoxプロパティをFalseにする。
 ※フォームを閉じるボタンだけ、使用可否を決めるプロパティがない。
・DLLImportを利用する場合には、"System.runtime.InteropServices"名前空間をImportsしておくこと。
 →DLLImportは、"System.runtime.InteropServices"名前空間の配下に定義されている。

【参考資料】
・今回、利用したAPIの詳細は、以下のURLを参照のこと。
 MSDNライブラリ プラットフォームSDK
  ・GetSystemMenu
  ・RemoveMenu