List the First Monday of every month using C# and VB.NET

Here’s some code for listing down the first Monday of every month in an year using C# and VB.NET. The Monday’s listed in this example are for the year 2010


public static void Main(string[] args)
for (int mth = 1; mth <= 12; mth++)
DateTime dt = new DateTime(2010, mth, 1);
while (dt.DayOfWeek != DayOfWeek.Monday)
dt = dt.AddDays(1);


Public Shared Sub Main(ByVal args() As String)
For mth As Integer = 1 To 12
Dim dt As New DateTime(2010, mth, 1)
Do While dt.DayOfWeek <> DayOfWeek.Monday
dt = dt.AddDays(1)
Next mth
End Sub



Will you give this article a +1 ? Thanks in advance

About The Author

Suprotim Agarwal
Suprotim Agarwal, ASP.NET Architecture MVP (Microsoft Most Valuable Professional) works as an Architect Consultant and provides consultancy on how to design and develop Web applications.

Suprotim is also the founder and primary contributor to DevCurry, DotNetCurry and SQLServerCurry. He is the Editor of a Developer Magazine called DNC Magazine. He has also written two EBooks 51 Recipes using jQuery with ASP.NET Controls. and The Absolutely Awesome jQuery CookBook

Follow him on twitter @suprotimagarwal


1 Response to "List the First Monday of every month using C# and VB.NET"
  1. Vijay kumar said...
    April 17, 2015 at 12:37 AM

    Hi, This is Vijay here.

    I need a function that finds out the last Thursday of the month, and adds 1 more day to it.

    I have similar function that reads the 3rd Friday of the month & adds 1 more day to it.

    Function changeexpiration(ByVal dt As Date, ByVal num As Integer) As Date

    'changes the date supplied to the 15th, adds or subtracts num month(s) to the date,
    'and finds the first Friday on or after the 15th, which must be the 3rd Friday of that month

    dt = dt.AddDays(15 - dt.Day)
    dt = dt.AddMonths(num)

    For x As Integer = 1 To 7
    If dt.DayOfWeek = DayOfWeek.Friday Then
    Exit For
    End If
    dt = dt.AddDays(1)

    Return dt.AddDays(1) 'actual expiration is the Saturday after close of trade on expiration Friday

    End Function

    Thanks & regds.,



Copyright © 2009-2016 All Rights Reserved for by Suprotim Agarwal | Terms and Conditions