Essential Networking Theory For Socket Programming
  • Introduction to TCP/IP socket programming in C# .Net using Visual Studio
  • Downloading Source Code
  • The Host In Computer Network - Networking Essentials
  • IP Address In Computer Network - Networking Essentials
  • Port Numbers In Computer Network Socket Programming- Networking Essentials
  • Client/Server Model as used in TCP/IP Stream Sockets - Networking Essentials
  • Enable the Telnet client utility - Networking Essentials
  • Test your Networking Essentials knowledge
Socket Programming in C# For Beginners
  • Server Side TCP/IP Socket Programming C# .Net Project Setup in Visual Studio
  • Demo - Accept Incoming Connections on Socket in C# .Net Using Telnet Client
  • Receive Data on a TCP/IP Socket in C# .Net
  • Using Encoding.ASCII.GetString to Convert Bytes To String for socket transfer
  • Socket Programming: Send Data on a TCP/IP Socket in C# .Net
  • Socket Programming Example Demo - Send and Receive Data on TCP/IP Sockets in C#
  • Demo - Communicate between C# desktop & Android app, configure Windows Firewall
  • Introduction to Client Side TCP/IP Socket Programming in C# .Net
  • Client Side Socket Programming VS Project Setup, using methods Connect, TryParse
  • Socket.Send() & Socket.Receive() Calls On Client Side TCP/IP Socket in C#.Net
  • Demo - Run TCP/IP Client & Server network programs, improve Server
  • How to cleanup a console application for properly closing the TCP/IP Socket
  • Section Summary
  • Introduction to socket programming in C# .Net
TCP/IP Server Asynchronous Socket Programming With async & await Keywords in C#
  • Section Intro: Asynchronous socket programming with async await in C# .Net
  • Example: Disadvantage of synchronous I/O in C# .Net
  • Accepting a TCPClient Connection Asynchronously with await keyword in C#
  • Demo: Accept TCPClient Asynchronously
  • Continuously Accept Client Connections, Exception Handling in C# async Method
  • Use System.Net.Socket.NetworkStream & StreamReader to read data from client
  • Demo: Read Data On Network Stream and Endless Accept async in C#.Net
  • How to Handle Multiple Network Clients on Server in C# .Net
  • Demo: Send Data to Multiple Network Clients from List at Once, SendAll Method
  • How to Stop Listening for New Connections and Disconnect Client Sockets Properly
  • Demo: TcpListener.Stop and TcpClient.Close Calls to Stop Server
  • Section Summary: TCP/IP Server Side Asynchronous Socket Programming in C# .Net
Async Client Side Socket Programming
  • Client side async socket Visual Studio C# project setup
  • Client Socket Programming using async keyword in C#.Net
  • Creating a console application and adding C# socket library reference
  • Reading data from TcpClient socket network stream with ReadAsync in C# .Net
  • Demo: Async Client side TCP/IP socket programming in C# .Net
  • Writing data on the a client socket with StreamWriter in C# .Net
  • Demo: Write data on TcpClient network stream with StreamWriter in C#.Net
  • Close Connection on TCPClient for socket programming in C# .Net
  • Demo: Closing connection on TcpClient for socket programming in C# .Net
  • Section Summary: Async client socket programming in C# .Net with async/await
Using Publisher Subscriber Model To Add Events for socket library in C# .Net
  • Introduction to pub/sub model and events/delegates in C#.Net
  • Adding a ClientConnected event to the server socket library in C# .Net
  • Adding a TextReceived event on the server to socket library in C# .Net
  • Publishing event TextReceived on client to socket library in C# .Net
  • Additional Events C# Source Code
Socket Programming: Additional Helpful Topics in C# .Net
  • Finding IP Address & Hostname of Your Windows PC from Command Prompt
  • Role of DHCP and DNS in a Computer Network
  • Resolving Hostname to IP Address Using System.Net.DNS for socket programming C#
  • Demo: Resolving Hostname with System.Net.DNS Class in C# .Net
  • How to use StreamReader.ReadLineAsync and StreamWriter.WriteLineAsync in C# .Net
  • Bonus: UDP Socket Programming in C# .Net
Deprecated Section: Creating a TCP/IP socket server
  • Setting up the project in Visual Studio
  • Preparing a TCPListener
  • Listening for incoming connection requests
  • Demo, incoming connection requests
  • Getting hold of a TCPClient object
  • Reading data from a TCPClient network stream
  • Demo, reading data
  • Writing data to a TCPClient network stream
  • Demo, writing data
  • Creating a TCP/IP Server
Deprecated Section: Creating a TCP/IP socket client
  • Setting up the project for socket client in Visual Studio
  • Connect to a TCP/IP socket server in C# .Net
  • Send data to a TCP/IP socket server
  • Demo, connect to TCP/IP socket server and send data
  • Receiving data from a server
  • Demo, receiving data from server
Deprecated Section: Common Network Programming Topics
  • Understanding and Using Loop-back Address
  • Finding IPv4 Address using Code
  • Handling more than one clients connection requests on server
  • Bonus: Maintaining a list of clients to handle multiple clients on your server
  • Bonus: Demo - Handling multiple clients on TCP/IP server
  • Listen for incoming connections on "Any" IP Address