да, с сервером, походу, работает мало народу 
А я тут дошел до следующего
    protected void Map1_Point(object sender, ESRI.ArcGIS.ADF.Web.UI.WebControls.PointEventArgs args)
    {
            Int32 x = Convert.ToInt32(args.ScreenPoint.X);
            Int32 y = Convert.ToInt32(args.ScreenPoint.Y);
            ESRI.ArcGIS.ADF.Web.Geometry.Point mapPoint = ESRI.ArcGIS.ADF.Web.Geometry.Point.ToMapPoint(x, y,
                Map1.GetTransformationParams(TransformationDirection.ToMap));
            if (map == null)
            {
                map = CWebApp.get_MapServerCtx(Map1, 0);
            }      
            //IPoint MapPoint = m_WebApp.ServerContext.CreateObject("esriGeometry.Point") as IPoint;
            //MapPoint.X = mapPoint.X;
            //MapPoint.Y = mapPoint.Y;
            map.ClearSelection();
            IEnvelope pEnvelope = new EnvelopeClass();
            IActiveView pActiveView = map as IActiveView;
            //IDisplayTransformation pDisplayTrans = pActiveView.ScreenDisplay.DisplayTransformation;
            //pDisplayTrans.TransformRect(pEnvelope, ref r, 4); //5 = esriTransformPosition + esriTransformToMap.
            pEnvelope.XMax = mapPoint.X;
            pEnvelope.XMin = mapPoint.X + 1;
            pEnvelope.YMax = mapPoint.Y;
            pEnvelope.YMin = mapPoint.Y + 1;
            pEnvelope.SpatialReference = map.SpatialReference;
            ISelectionEnvironment pSelectionEnvironment = new SelectionEnvironmentClass();            
            pSelectionEnvironment.CombinationMethod = esriSelectionResultEnum.esriSelectionResultNew;
            pSelectionEnvironment.PointSelectionMethod = esriSpatialRelEnum.esriSpatialRelIntersects;
            map.SelectByShape(pEnvelope, pSelectionEnvironment, false);
            ISelection pSel = map.FeatureSelection;
            IDisplay pDisp = pActiveView.ScreenDisplay;
            ESRI.ArcGIS.esriSystem.ITrackCancel pTrC = new TrackCancelClass();
            pSel.Draw(pDisp, pTrC);
            pActiveView.Refresh();
            Map1.Refresh();            
            System.Windows.Forms.MessageBox.Show(" Selected:" + map.SelectionCount.ToString());                    
    }
плюс статические метод для получения объекта карты через IMap:
  public static IMap get_MapServerCtx(ESRI.ArcGIS.ADF.Web.UI.WebControls.Map MapCtrl, int MapResoursNumber)
    {
        MapFunctionality mf = (MapFunctionality)MapCtrl.GetFunctionality(MapResoursNumber);
        MapResourceLocal mr_local = (MapResourceLocal)mf.MapResource;
        IServerContext ctx = mr_local.ServerContextInfo.ServerContext;
        IMapServer ms = (IMapServer)ctx.ServerObject;
        IMapServerObjects mso = (IMapServerObjects)ms;
        MapInformation m_MapInfo = (MapInformation)mr_local.MapInformation;
        String dataFrame = m_MapInfo.DataFrame;
        return mso.get_Map(dataFrame);
    }
Мэсседжбокс вроде выдает кол-во объектов "под кликом", но только с тех слоев, которые были видны по-дефолту. Если включить видимость еще какого нибудь слоя, в селекшн объекты с него не попадают.
Чего не хватает?
Не ругайте меня сильно, потому как мало опыта в SOA