Console.Beep Method (Int32, Int32)


Plays the sound of a beep of a specified frequency and duration through the console speaker.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

[HostProtectionAttribute(SecurityAction.LinkDemand, UI = true)]
public static void Beep(
	int frequency,
	int duration


Type: System.Int32

The frequency of the beep, ranging from 37 to 32767 hertz.

Type: System.Int32

The duration of the beep measured in milliseconds.

Exception Condition

frequency is less than 37 or more than 32767 hertz.


duration is less than or equal to zero.


This method was executed on a server, such as SQL Server, that does not permit access to the console.

Beep wraps a call to the Windows Beep function. Whether Beep produces a sound on versions of Windows before Windows 7 depends on the presence of a 8254 programmable interval timer chip. Starting with Windows 7, it depends on the default sound device.


The Beep method is not supported on the 64-bit editions of Windows Vista and Windows XP.


The frequency and duration parameters are ignored for these operating systems.

This example demonstrates the Beep method by playing the first few notes of a song through the console speaker.

// This example demonstrates the Console.Beep(Int32, Int32) method
using System;
using System.Threading;

class Sample 
    public static void Main() 
// Declare the first few notes of the song, "Mary Had A Little Lamb".
    Note[] Mary = 
        new Note(Tone.B, Duration.QUARTER),
        new Note(Tone.A, Duration.QUARTER),
        new Note(Tone.GbelowC, Duration.QUARTER),
        new Note(Tone.A, Duration.QUARTER),
        new Note(Tone.B, Duration.QUARTER),
        new Note(Tone.B, Duration.QUARTER),
        new Note(Tone.B, Duration.HALF),
        new Note(Tone.A, Duration.QUARTER),
        new Note(Tone.A, Duration.QUARTER),
        new Note(Tone.A, Duration.HALF),
        new Note(Tone.B, Duration.QUARTER),
        new Note(Tone.D, Duration.QUARTER),
        new Note(Tone.D, Duration.HALF)
// Play the song

// Play the notes in a song.
    protected static void Play(Note[] tune)
    foreach (Note n in tune)
        if (n.NoteTone == Tone.REST)
            Console.Beep((int)n.NoteTone, (int)n.NoteDuration);

// Define the frequencies of notes in an octave, as well as 
// silence (rest).
    protected enum Tone
    REST   = 0,
    GbelowC = 196,
    A      = 220,
    Asharp = 233,
    B      = 247,
    C      = 262,
    Csharp = 277,
    D      = 294,
    Dsharp = 311,
    E      = 330,
    F      = 349,
    Fsharp = 370,
    G      = 392,
    Gsharp = 415, 

// Define the duration of a note in units of milliseconds.
    protected enum Duration
    WHOLE     = 1600,
    HALF      = WHOLE/2,
    QUARTER   = HALF/2,
    EIGHTH    = QUARTER/2,

// Define a note as a frequency (tone) and the amount of 
// time (duration) the note plays.
    protected struct Note
    Tone     toneVal;
    Duration durVal;

// Define a constructor to create a specific note.
    public Note(Tone frequency, Duration time)
        toneVal = frequency;
        durVal  = time;

// Define properties to return the note's tone and duration.
    public Tone NoteTone { get{ return toneVal; } }
    public Duration NoteDuration { get{ return durVal; } }
This example produces the following results:

This example plays the first few notes of "Mary Had A Little Lamb" 
through the console speaker.

.NET Framework
Available since 2.0
Return to top