There are 2 ways to achieve that goal. First one, pass image url to channel if my source url is like http://abc.com/dog.png var reply = context.MakeMessage(); reply.Attachments.Add(new Attachment { ContentUrl = $" http://abc.com/dog.png ", ContentType = "image/png", }); Pass base64 encoded image data Stream fs = File.OpenRead("C:\\dog.png"); byte[] img = fs.ToArray(); ...