Learn C# with Visual Studio 2017 and Console Programs

Tom Owsiak, Teacher of Interesting Things

Play Speed
  • 0.5x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 2x
89 Videos (9h 31m)
    • Promo

      1:06
    • Lesson1GetVisualStudio2017PreviewCommunity

      3:48
    • Lesson2FirstProgram

      7:37
    • Lesson3OneLineOfOutput

      4:24
    • Lesson4DigIntoConsoleClass

      8:03
    • Lesson5DotNetFramework

      9:04
    • Lesson6UsingDirectives

      3:56
    • Lesson7OneVariable

      7:42
    • Lesson8DataTypeConsequences

      4:43
    • Lesson9DifferentDataTypes

      7:36
    • Lesson10PringtMultipleLines

      8:38
    • Lesson11Debugger

      6:29
    • Lesson12DebuggerImplicitMethodCalls

      5:26
    • Lesson13BasicMathPart1

      7:59
    • Lesson14BasicMathPart2

      5:18
    • Lesson15ReadStringInput

      5:45
    • Lesson16StringClassDetail

      9:44
    • Lesson17NumericInput1

      7:03
    • Lesson18NumericalInput2

      7:22
    • Lesson19CallStackStructure

      5:15
    • Lesson20MethodChaining

      7:44
    • Lesson21BasicProperties

      9:25
    • Lesson22BasicLogicalConditions

      8:54
    • Lesson23LogicalIfElse

      6:06
    • Lesson24MultipleIfElse

      5:06
    • Lesson25IfElseDebugger

      1:50
    • Lesson26MethodWithIfElse

      7:07
    • Lesson27TryParse1

      5:51
    • Lesson28TryParse2

      3:25
    • Lesson29TryParse3

      11:34
    • Lesson30CompoundOperators

      8:13
    • Lesson31WhileLoopPart1

      6:42
    • Lesson32WhileLoopsHighToLow

      5:42
    • Lesson33InfiniteWhileLoops

      11:07
    • Lesson34ForLoopsPart1

      6:10
    • Lesson35ForLoopsPart2

      5:23
    • Lesson36ForLoopsPart3

      5:26
    • Lesson37StringBasicsPart1

      6:56
    • Lesson38LoopsWithStrings

      8:44
    • Lesson39ForEachWithNestedIf

      8:18
    • Lesson40StringsInMemory

      3:45
    • Lesson41ForLoopMechanics

      2:26
    • Lesson42LinqPart1

      7:56
    • Lesson43LinqListsPart2

      7:22
    • Lesson44TryParseWithLists

      7:35
    • Lesson45TernaryOperatorPart1

      5:11
    • Lesson46TernaryOpeartorPart2

      4:08
    • Lesson47RewriteTernaryOperator

      4:32
    • Lesson48SwitchBlocksPart1

      6:55
    • Lesson49Debugger

      1:50
    • Lesson50DivisionByZeroWithSwitchBlocks

      7:10
    • Lesson51LogicalAndPart1

      5:15
    • Lesson52AndWithIf

      5:35
    • Lesson53While(true)Break

      10:28
    • Lesson54OrOperator

      5:46
    • Lesson55OrApplication

      9:30
    • Lesson56MethodBasics

      6:54
    • Lesson57GetSetProperties

      2:57
    • Lesson58MethodWithReturnValue

      6:48
    • Lesson59CallStackParamsAsLocalVariables

      4:07
    • Lesson60BLockBodyVsExpressionBody

      2:09
    • Lesson61TwoParamsMethodPart1

      5:19
    • Lesson62MethodTwoParametersPart2

      7:48
    • Lesson63ModernSwitchBlocks

      8:48
    • Lesson64DivRem

      7:30
    • Lesson65MethodsWithExceptionsPart2

      6:34
    • Lesson66ExceptionErrorChallenge

      3:56
    • Lesson67NullReference

      7:11
    • Lesson68MethodWithStringParameterReturnValues

      7:50
    • Lesson69RedefineDivRem

      4:29
    • Lesson70TupleMethodPart1

      5:59
    • Lesson71TupleMethodsPart2

      6:19
    • Lesson72WhereLinqMethodPart1

      6:45
    • Lesson73WhereMethodPart2

      6:15
    • Lesson74ArrayIndexBasi s

      8:36
    • Lesson75ParamsAdditionPart1

      5:06
    • Lesson76ParamsProductChallenge

      5:15
    • Lesson77SplitMethod

      6:48
    • Lesson78ArraysListsInMemory

      6:00
    • Lesson79PassingByReferenceAndValuePart1

      7:19
    • Lesson80PassByRefAndByValuePart2

      3:49
    • Lesson81ArraysWithForLoops

      8:55
    • Lesson82StringsVsDoubleInMemory

      4:59
    • Lesson83TwoDArraysPart1

      8:35
    • Lesson84TwoDArraysPart2

      3:54
    • Lesson85AverageMethodForTwoDArray

      6:56
    • Lesson86FillMultiDArrayPart1

      9:55
    • Lesson87PrintMultiDArray

      4:35
    • Lesson88JaggedArrays

      10:21

About This Class

Course Overview: 

1. This course consists of standalone examples designed to illustrate specific skills. There are no big applications built in this course.

2. You must use Visual Studio 2017 to be sure you have the latest version of C# running. Lower versions of Visual Studio will cause errors because newer programming elements will not be found.

3. This is a beginners course, but I do not spare the details, even when they are very technical. This means in a few videos I show you the .NET Framework source code. I do this because it's important to look at things as they actually are, and not at an artificially simplified perspective.

4. I talk fairly slowly in some of the videos.

5. If you feel the way I talk is too slow for you,  please  watch at 1.25x, which you can set easily on the player. 

6. I made the videos in 1080p HD. If you have trouble with the resolution, please try reloading the page a few times. 

7. This course covers C# through console programs only. It does not have ASP.NET, Windows Forms, MVC, .NET Core or anything like that. 

8. There are questions throughout the videos. At those times, please pause and try answering them.  Success invariably results from understanding how the many small and intricate pieces of anything fit together. This takes time, consistent effort and a willing to push yourself.

9. The videos are just coding videos done in Visual Studio Community 2017. This is the free version of Visual Studio.

10. This is a course dedicated to code only, so you do not see any of the following: a talking head, PowerPoints or fancy graphics. To me, these are distractions that shift focus away from the things that truly matter. 

11. Exercises start in video two. I have overlays embedded that say "Pause and try this: ...", with the specific question in place of the ellipses. 

12. In some of the videos, there are several questions because I guide you through building a bigger piece of code. 

13. Some of the videos don't have any questions.

14. All the code is written from scratch in the code editor window in Visual Studio Community 2017. 

15. In some of the videos, I use the debugger to step through the code, line by line, and intricate detail by intricate detail. 

16. I talk frequently about reading the various tips that show as you type in Visual Studio. You must learn how to read them because they provide valuable information.

17. In some of the videos, I show you how C# looks in your computer memory. You must look at the memory of your computer to truly understand what's happening. Just reading messages in the console window is not the same as truly understanding what they mean.

18. In some of the videos, I zoom in on various things I feel need special attention. 

1 of 1 students recommendSee All

Really great class, very recommended.

15

Students

--

Projects

Tom Owsiak

Teacher of Interesting Things

Hello, I'm T.

See full profile