Net35.Threading.Tasks 4.2.0.3

dotnet add package Net35.Threading.Tasks --version 4.2.0.3
                    
NuGet\Install-Package Net35.Threading.Tasks -Version 4.2.0.3
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Net35.Threading.Tasks" Version="4.2.0.3" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Net35.Threading.Tasks" Version="4.2.0.3" />
                    
Directory.Packages.props
<PackageReference Include="Net35.Threading.Tasks" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Net35.Threading.Tasks --version 4.2.0.3
                    
#r "nuget: Net35.Threading.Tasks, 4.2.0.3"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Net35.Threading.Tasks@4.2.0.3
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Net35.Threading.Tasks&version=4.2.0.3
                    
Install as a Cake Addin
#tool nuget:?package=Net35.Threading.Tasks&version=4.2.0.3
                    
Install as a Cake Tool

Net35.Threading.Tasks

Net35.Threading.Tasks is a Mono port of the Task Parallel Library (TPL) that provides System.Threading.Tasks-style APIs for legacy .NET frameworks (including .NET 3.5 and .NET 2.0) as well as modern .NET Standard targets. The project exposes a compatible surface so code written against newer TPL APIs can be used on older platforms.

Key information

  • Author: Piero Viano
  • Package id: Net35.Threading.Tasks
  • Purpose: Back-port the TPL to older .NET frameworks and provide compatible task-based APIs

Supported target frameworks

  • netstandard2.0
  • netstandard2.1
  • net40
  • net45
  • net35
  • net20

Repository layout (important files/dirs)

  • Net35.Threading.Tasks/ � main project and source files (contains Net35.Threading.Tasks.csproj)
  • KaosCollections/ � vendored collection helpers used by some targets
  • Portable.ConcurrentDictionary/ � vendored concurrent dictionary sources used for legacy targets
  • Net35.Threading.Tasks.Tests/ � unit tests for the project
  • Packages/ � output folder for generated NuGet packages (configured by PackageOutputPath)

Build

  • For modern targets (netstandard2.*) use the .NET SDK:

    dotnet build ./Net35.Threading.Tasks/Net35.Threading.Tasks.csproj -c Release
    
  • Legacy targets (net20, net35, net40, net45) require MSBuild / Visual Studio with the corresponding targeting packs installed. Open the solution in Visual Studio and choose the desired target framework configuration to build.

Testing

  • Tests are located in Net35.Threading.Tasks.Tests.

  • To run tests for SDK-compatible targets:

    dotnet test ./Net35.Threading.Tasks.Tests/Net35.Threading.Tasks.Tests.csproj
    
  • For legacy-targeted tests run them using Visual Studio or a test runner that supports the specific framework.

Packaging

  • The project is configured to generate a NuGet package on build (GeneratePackageOnBuild=true).

  • Packages are written to the Packages\ directory (see the PackageOutputPath property in Net35.Threading.Tasks.csproj).

  • To manually create a package for SDK-compatible targets use:

    dotnet pack ./Net35.Threading.Tasks/Net35.Threading.Tasks.csproj -c Release
    

Contributing

  • Contributions, issues and pull requests are welcome. Please include tests for new behavior and preserve compatibility across the supported target frameworks.
  • Be mindful that some source files are conditionally compiled or linked from the KaosCollections and Portable.ConcurrentDictionary folders; check Net35.Threading.Tasks.csproj for the per-target configuration.

License

  • See LICENSE.txt in the repository root for license details.

Notes

  • This project includes code originally from Xamarin (see copyright notices in source files).
  • Inspect Net35.Threading.Tasks.csproj for details on linked sources, package references, and conditional compilation used to support multiple frameworks
Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 is compatible. 
.NET Framework net20 is compatible.  net35 is compatible.  net40 is compatible.  net403 was computed.  net45 is compatible.  net451 was computed.  net452 was computed.  net46 was computed.  net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (14)

Showing the top 5 NuGet packages that depend on Net35.Threading.Tasks:

Package Downloads
Net4x.BaseTypes

Package Description

Net4x.AsyncBridge

Package Description

Net4x.CoreLibrary.Interfaces.Common

CoreLibrary Interfaces

Net4x.CoreLibrary.Interfaces.General.Common

CoreLibrary Interfaces

Net4x.StandardTypesWrappers

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
4.2.0.3 1,267 1/10/2026
4.2.0.2 9,026 12/30/2025
4.2.0.1 579 12/26/2025
1.4.0.1 1,375 12/21/2025
1.4.0 29,768 3/31/2025
1.1.0 30,768 8/26/2023
1.1.0-at20230430052525 9,795 5/7/2023
1.0.0-at20230415040204 4,876 4/15/2023
1.0.0-at20230411060651 15,793 4/14/2023
1.0.0-at20230409091843 428 4/9/2023
1.0.0-at20230409083604 388 4/9/2023
1.0.0-at20230409070212 403 4/9/2023
1.0.0-at20230409070008 257 4/9/2023
1.0.0-at20230409060707 237 4/9/2023
1.0.0-at20230408 378 4/8/2023