¿Cómo agrupo los datos en una vista MVC de ASP.NET?

En herramientas de informes como Crystal Reports, hay formas de tomar datos desnormalizados y agruparlos por una columna particular en los datos, creando encabezados de fila para cada elemento único en la columna especificada.

Si tengo esto:

Category1    Data1
Category1    Data2
Category1    Data3
Category2    Data4
Category2    Data5
Category2    Data6

El software de informes lo agrupará así:

Category1
      Data1
      Data2
      Date3
Category2
      Data4
      Data5
      Data6

¿Hay alguna manera de hacer esto en una vista de ASP.NET MVC, quizás utilizando un método de extensión linq simple o de linq frase con foreach o anidado anidado?