diff --git a/snippets/fsharp/System/TimeoutException/Overview/fs.fsproj b/snippets/fsharp/System/TimeoutException/Overview/fs.fsproj
new file mode 100644
index 00000000000..d7d27929a83
--- /dev/null
+++ b/snippets/fsharp/System/TimeoutException/Overview/fs.fsproj
@@ -0,0 +1,13 @@
+
+
+ Exe
+ net6.0
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/snippets/fsharp/System/TimeoutException/Overview/to.fs b/snippets/fsharp/System/TimeoutException/Overview/to.fs
new file mode 100644
index 00000000000..9f2458e8ad5
--- /dev/null
+++ b/snippets/fsharp/System/TimeoutException/Overview/to.fs
@@ -0,0 +1,42 @@
+//
+// This example demonstrates the use of the TimeoutException
+// exception in conjunction with the SerialPort class.
+
+open System
+open System.IO.Ports
+
+try
+// Set the COM1 serial port to speed = 4800 baud, parity = odd,
+// data bits = 8, stop bits = 1.
+ let sp = new SerialPort("COM1", 4800, Parity.Odd, 8, StopBits.One)
+// Timeout after 2 seconds.
+ sp.ReadTimeout <- 2000
+ sp.Open()
+
+// Read until either the default newline termination string
+// is detected or the read operation times out.
+ let input = sp.ReadLine()
+
+ sp.Close()
+
+// Echo the input.
+ printfn $"{input}"
+
+// Only catch timeout exceptions.
+with :? TimeoutException as e ->
+ printfn $"{e}"
+(*
+This example produces the following results:
+
+(Data received at the serial port is echoed to the console if the
+read operation completes successfully before the specified timeout period
+expires. Otherwise, a timeout exception like the following is thrown.)
+
+System.TimeoutException: The operation has timed-out.
+ at System.IO.Ports.SerialStream.ReadByte(Int32 timeout)
+ at System.IO.Ports.SerialPort.ReadOneChar(Int32 timeout)
+ at System.IO.Ports.SerialPort.ReadTo(String value)
+ at System.IO.Ports.SerialPort.ReadLine()
+ at Sample.main()
+*)
+//
\ No newline at end of file
diff --git a/xml/System/TimeoutException.xml b/xml/System/TimeoutException.xml
index 57850f8fa00..c911f59410d 100644
--- a/xml/System/TimeoutException.xml
+++ b/xml/System/TimeoutException.xml
@@ -75,6 +75,7 @@
:::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/TimeoutException.class/cpp/to.cpp" id="Snippet1":::
:::code language="csharp" source="~/snippets/csharp/System/TimeoutException/Overview/to.cs" id="Snippet1":::
+ :::code language="fsharp" source="~/snippets/fsharp/System/TimeoutException/Overview/to.fs" id="Snippet1":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/TimeoutException.class/VB/to.vb" id="Snippet1":::
]]>