In-Depth Research Report: Deep Learning Frameworks for C# and .NET (2025–2026)
Key points
- Full training+inference frameworks: TensorFlow.NET (SciSharp, ~3.3k stars, static graph, P/Invoke over TensorFlow C API), TorchSharp (official PyTorch C# bindings via libtorch, dynamic graph, ~1.5k stars), and Torch.NET (SciSharp, PyTorch-style but less mature).
- Lightweight inference frameworks: ML.NET (Microsoft, ~9.1k stars, Fluent API, YOLOv8 object detection in v3.0), ONNX Runtime (Microsoft, ~16k stars, Execution Provider architecture spanning CPU/GPU/NPU), and the emerging DeploySharp (zero-config deployment of YOLOv5–v12, PP-OCR v4/v5, anomaly detection; OpenVINO + ONNX Runtime engines, TensorRT planned).
- High-level abstractions: Keras.NET (declarative API over TensorFlow.NET) and Catalyst (spaCy-inspired NLP with NER/POS/text classification).
- Computer vision: TensorFlow.NET achieves 99.2% accuracy with <15ms inference in an industrial defect-detection case (100k images). DeploySharp runs YOLOv8n at 23ms on RTX 3060, offers out-of-the-box YOLOv5–v12 (detection/segmentation/pose/OBB) and PP-OCR v4/v5 at 23ms end-to-end. ML.NET added official YOLOv8 APIs; TorchSharp is favored for YOLO debugging via dynamic graphs.
- NLP: ONNX Runtime is the standard for BERT-style model inference (dynamic axes for variable-length input, 30–50% latency reduction via graph optimization). LLamaSharp enables local GGUF-quantized LLMs (Mistral, Mixtral, Qwen) on consumer hardware. Semantic Kernel provides enterprise LLM orchestration with DI, telemetry, and vector-store abstractions. Catalyst covers lightweight NLP without external dependencies.
- Speech: Whisper.net (whisper.cpp-based) supports 99 languages with streaming recognition; ONNX Runtime deploys Wav2Vec 2.0/HuBERT/Conformer exports; ML.NET supports audio classification for keyword spotting.
- Emerging areas: CLIP/BLIP multimodal retrieval via ONNX (a Chinese-CLIP e-commerce case: <100ms, 92% Top-5 accuracy on 1M items); ML.NET time-series forecasting (SSA, SrCNN); DeploySharp anomaly detection (<50ms on edge, one case: 98.5% accuracy, 35ms on Intel NUC).
- Cloud: Optimized .NET container images (ONNX Runtime images <100MB on Alpine); Kubernetes HPA/VPA orchestration; Azure ML integration with ML.NET (Managed Online Endpoints, CI/CD); Triton Inference Server with C# gRPC clients for high-throughput serving.
- Mobile: .NET MAUI + ONNX Runtime Mobile (a retail inventory app: 15MB model, <2s cold start); INT8 quantization reduces size/memory to ~25% of FP32 with <2% accuracy loss.
- Edge/embedded: ONNX Runtime ARM64 builds (Raspberry Pi, Jetson, Apple Silicon); .NET Nano Framework for MCUs (256KB RAM) as sensor/preprocessing nodes; real-time techniques include
GC.TryStartNoGCRegion, object pooling, CPU affinity, and Native AOT for deterministic latency. - Hybrid: Model partitioning (early layers at edge, later layers in cloud), bandwidth-adaptive task offloading, incremental model updates (90%+ bandwidth savings via delta updates), and federated learning as an emerging direction.
Framework landscape
| Framework | Type | Graph | GPU | Maturity | |---|---|---|---|---| | TensorFlow.NET | Train + infer | Static | CUDA/cuDNN | ★★★★☆ | | TorchSharp | Train + infer | Dynamic | CUDA/cuDNN | ★★★☆☆ | | ML.NET | .NET-native ML | — | via backend | ★★★★★ | | ONNX Runtime | Inference | — | Multi-backend | ★★★★☆ | | DeploySharp | Inference/deploy | — | OpenVINO/ONNX/TRT (planned) | ★★★★★ (ease) |
Backend engines: OpenVINO optimizes Intel CPU/GPU/NPU (2–5× CPU speedup); ONNX Runtime is the de facto cross-hardware standard (1.5–3× vs native frameworks); TensorRT targets NVIDIA GPUs (up to 36× vs CPU per NVIDIA data); CUDA/cuDNN underpin TensorFlow.NET and TorchSharp GPU training.
Domain performance
Benchmarks
| Metric | C# (.NET 8) | Python (3.11) | C# advantage | |---|---|---|---| | ResNet-50 latency | 42ms | 45ms | 7% | | Memory (100 concurrent) | 180MB | 520MB | 65% | | Cold start | 1.2s | 2.8s | 57% | | Peak throughput | 2400 FPS | 2100 FPS | 14% |
C# advantages stem from Native AOT, Span<T>/value types, and GIL-free async. ONNX Runtime memory pooling cuts multi-model memory 30–50%; DeploySharp dynamic batching (GlobalMaxBatchSize) raises GPU utilization from 30% to 90%+. Edge case: YOLOv8n on Intel NUC 11 drops from 120ms (ONNX Runtime) to 35ms with OpenVINO. Jetson Nano industrial case: C# + INT8 YOLOv8s solder-defect detection at <50ms end-to-end (vs 200ms+ cloud).
Deployment scenarios
Community and selection guidance
| Framework | Stars | Maintainer | Community assessment | |---|---|---|---| | ONNX Runtime | 16k+ | Microsoft | Mature, active, widely adopted | | ML.NET | 9.1k+ | Microsoft | Mature, strong ecosystem | | TensorFlow.NET | 3.3k+ | SciSharp | Good ecosystem for .NET AI | | TorchSharp | 1.5k+ | .NET Foundation | Less mature; lags PyTorch evolution | | DeploySharp | New | Community-driven | Fast iteration, CV-focused |
Recommendations: Choose ONNX Runtime + ML.NET for Microsoft-aligned, production-safe stacks; TensorFlow.NET or TorchSharp when training in C# is required; DeploySharp for rapid zero-config vision deployment with multi-engine switching; LLamaSharp + Semantic Kernel for local-first LLM applications; OpenVINO via DeploySharp for Intel edge hardware.