Вы можете использовать соединитель, который значительно упростит процесс разработки, например http://www.bendsoft.com/net-sharepoint-connector/.
С таким компонентом вы просто подключаетесь к своим спискам, как если бы они были обычными таблицами SQL, и выбирали нужные данные из каждого списка и выводили их по своему усмотрению.
Например
string query = "SELECT ID, LinkTitle AS Title FROM list";
conn = new SharePointConnection(connectionString);
SharePointDataAdapter adapter = new SharePointDataAdapter(query, conn);
DataTable dt = new DataTable();
adapter.Fill(dt);
Или с помощью вспомогательного метода для заполнения DataGrid
string query = "Select * from mylist.viewname";
DataGrid dataGrid = new DataGrid();
dataGrid.DataSource = Camelot.SharePointConnector.Data.Helper.ExecuteDataTable(query, connectionString);
dataGrid.DataBind();
Controls.Add(dataGrid);
Вы можете увидеть еще несколько примеров здесь, список доступа в sharepoint 2007 с использованием c #
Как вы хотите запекать данные, зависит от вашего воображения, но это наверняка упростит ваш рабочий процесс и разработку SharePoint:)