Console.Inを使った一例を挙げます。 Consoleクラスには標準入力に書き込まれる内容すべてを読み込むメソッドは存在しませんが、TextReaderにはReadToEndメソッドが用意されているため、これを使って標準入力の内容すべてを読み込むことができます。

Console.In.ReadToEndメソッドを使って標準入力の内容をすべて読み込む
using System;

class Sample {
  static void Main()
  {
    // ReadToEndメソッドで標準入力の内容をすべて読み込む
    var text = Console.In.ReadToEnd();

    // 読み込んだ内容を出力する
    Console.WriteLine("(length = {0})", text.Length);
    Console.WriteLine(text);
  }
}
キー入力を使った場合の実行例
>sample.exe
line1
line2
line3
^Z
(length = 21)
line1
line2
line3

パイプを使った場合の実行例
>type sample.txt
line1
line2
line3

>type sample.txt | sample.exe
(length = 21)
line1
line2
line3

コンソールアプリケーションの場合、上記のコードはCTRL-Z(LinuxではCTRL+D)で標準入力への入力を終了しない限りReadToEndメソッドから処理が戻らず待機状態になります。

コマンドラインでのリダイレクト・パイプと標準入出力との接続についてはMS-DOSコマンドプロンプトTips §.パイプとリダイレクトを参照してください。