diff --git a/ApacheThrift.nuspec b/ApacheThrift.nuspec
new file mode 100644
index 0000000..54ed2c6
--- /dev/null
+++ b/ApacheThrift.nuspec
@@ -0,0 +1,50 @@
+<?xml version="1.0"?>
+
+<!--
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+  
+      http://www.apache.org/licenses/LICENSE-2.0
+  
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+  Instructions for building a nuget package:
+
+  1. Open Thrift.sln in lib\csharp\src and build the release version
+     of the "Thrift" and "Thrift.45" projects.
+  2. Open Thrift.sln in lib\netcore and build the release version of
+     the "Thrift" project.
+  3. nuget setApiKey <your-api-key>
+  3. nuget pack ApacheThrift.nuspec -Symbols -SymbolPackageFormat snupkg
+  4. nuget push ApacheThrift.1.0.0.nupkg -Source https://api.nuget.org/v3/index.json
+  -->
+
+<package xmlns="http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
+  <metadata>
+    <id>ApacheThrift</id>
+    <version>1.0.0</version>
+    <title>Apache Thrift 1.0.0</title>
+    <authors>Apache Thrift Developers</authors>
+    <owners>Apache Software Foundation</owners>
+    <license type="expression">Apache-2.0</license>
+    <projectUrl>http://thrift.apache.org/</projectUrl>
+    <requireLicenseAcceptance>true</requireLicenseAcceptance>
+    <summary>Apache Thrift .NET Library</summary>
+    <description>
+      Contains runtime libraries from lib/csharp for net35 and net45 frameworks, 
+      and from lib/netcore for netstandard2.0 framework development.
+    </description>
+    <repository type="GitHub" url="https://github.com/apache/thrift" branch="release/1.0.0" />
+    <tags>Apache Thrift RPC</tags>
+  </metadata>
+  <files>
+    <file src="lib\csharp\src\bin\Release\Thrift.*" target="lib\net35" />
+    <file src="lib\csharp\src\bin\Release\Thrift45.*" target="lib\net45" />
+    <file src="lib\netcore\Thrift\bin\Release\netstandard2.0\*.*" target="lib\netstandard2.0" />
+  </files>
+</package>
\ No newline at end of file
